很可愛的乙個公司,從題裡面都可以看出來。
先是10道多選題,都是在應該都是在網上可以查到的那種,把牛客都做一遍就行。
然後是兩道程式設計,一看就是leedcode上的問題,難度適中,需要想一下才知道答案。
1.leetcode 1249 - 移除無效的括號
比較簡單
在此提供兩種解題思路
first:
string minremovetomakevalid(string s) else if (s[i] == ')') else }}
// 此時棧中的元素和deletevector中的元素是需要刪除的元素
// 還要注意的是刪除的時候要從後面往前面刪除,不然i所指向的位置就不對了
while (!_stack.empty () || !deletevector.empty ())
} else if (deletevector.empty ()) else else }}
return s;
}
second:
string minremovetomakevalid1(string s) else if (s [i] == ')')
}/**/
for (vector::iterator item = deletestack.end () - 1; item >= deletestack.begin (); item--)
}// 這個右括號需要刪除
if (flag) deletestack.push_back (i);
} else }}
// 此時只需要刪除棧中元素即可
while (!deletestack.empty ())
return s;
}
2.leetcode 1035 - 不相交的線
int longestcommonsubsequence(string text1, string text2) else
} else else if (i == 0) else if (j == 0)
} else }}
}return dp [text1.length () - 1][text2.length () - 1];
}
這道題還是挺有意思的,本來是乙個無從下手的問題,但是可以把問題轉換成找最長公共子串行卻非常的簡單。其實只有所有的線不相交才能是最長子序列,二者其實是互補的。所以只需要動態規劃建一張動態表就可以實現。最後返回表的最後乙個選項即可。 2020 09 19公尺哈遊測試開發筆試程式設計題
1 旋轉字元遊戲 給定兩個整數m,n,生成乙個m n的矩陣,矩陣中元素取值為a z的26個字母中的乙個,a在左上角,其餘各數按順時針方向旋轉前進,依次遞增放置,當超過z時,又從a開始填充。例如,當m 5,n 8時。矩陣中的內容如下 a b c d e f g h v w x y z a b i u ...
2020公尺哈遊春招筆試題
給定兩陣列 int a int b 輸出 3 int a1 int b1 輸出 2 int a2 int b2 輸出 4 返回兩個陣列中相同數字不相交的最大連線數 param a int整型一維陣列 整數集合a param b int整型一維陣列 整數集合b return int整型 暴力 publ...
x公尺筆試題
1 24個人做abc三道菜,滿足如下條件 問會做c的有多少人?解析 a b 1,只會c的是a b的3倍,只會a的是只會c的兩倍,而且 只會a 只會 c 要 24 所以 只會a是12,只會c是6,a b是2,所以得到下圖 所以 a c b c 只會b 4,要把剩下的4人分配到這三個區域,因為 只會b ...