Adobe SDE OA 題庫分享(HackerRank)|真的有重複!

最近剛做完 Adobe SDE OA (HackerRank),說實話:題庫重複率不低,刷到同一套的機率很大。這場 OA 一共 3 道 Coding,其中 1 道固定 Python。如果你正在準備 Adobe,這套一定要存。

OA 基本資訊

  • 平臺:HackerRank
  • 題量:3 道 Coding
  • 語言:其中 1 題 必須 Python
  • 難度:中等,但很容易在細節翻車

T1|最小絕對差數對(高頻)

題意
給定一個無重複整數陣列,找出所有絕對差最小的數對。要求每個數對內部升序排列,最終結果按第一個元素升序輸出。

思路
先對陣列排序,最小差值只可能出現在相鄰元素。然後線性遍歷排序後的陣列:遇到更小差值就清空結果並更新最小差值,遇到相同差值就直接加入結果。

易踩點
要注意在更新最小差值時及時清空舊結果,同時輸出順序要按照要求處理,否則容易出錯。

T2|溫度操作衝最大值

題意
給定起始溫度 x、目標溫度 y,以及最多 z 次操作(每次可以 +1 或 -1),要求在最終到達 y 的前提下,過程中能夠達到的最大溫度。如果無法到達 y,直接返回 -1。

解題關鍵
思路其實很直接,主要三步:

  1. 可不可達判斷:如果 z 小於 |x – y|,說明操作次數不夠,直接返回 -1。
  2. 奇偶性判斷:操作步數與距離的奇偶性必須一致,否則實際可用步數 K = z – 1;一致則 K = z。
  3. 衝高策略:先儘可能往上衝,再掉頭回到 y,最大溫度可直接計算為 (x + y + K) / 2。

這道題掛的人很多,不是不會做,而是沒注意到奇偶性,或者把策略想得太複雜。

T3|長度為 k 的不同子串

題意
給定一個字串 password 和整數 k,統計所有長度為 k 的不同子串數量。

思路
Python 中可以直接用 set 實現:從索引 0 遍歷到 len(password) - k,每次切出長度為 k 的子串並加入 set,最後返回 len(set) 即可。邊界情況需要考慮 len(password) < k,此時返回 0。

為什麼刷題也容易掛?

很多同學在刷題階段其實已經具備能力,但在正式 OA 中因為緊張、節奏被打亂而失誤。
不少同學在 關鍵 OA 場 會選擇 Programhelp 的 OA無痕助攻 :如果你正在準備 Adobe、Google、Amazon 等公司的 OA,尤其是時間緊、題量集中的場次,可以聯絡我們。

author avatar
Jory Wang Amazon資深軟體開發工程師
Amazon 資深工程師,專注 基礎設施核心系統研發,在系統可擴充套件性、可靠性及成本最佳化方面具備豐富實戰經驗。 目前聚焦 FAANG SDE 面試輔導,一年內助力 30+ 位候選人成功斬獲 L5 / L6 Offer。
END
 0