Amazon OA Hackerrank 4月真題放送|最新題型變化 + 高頻考點全解析(2026版)

四月份最新的 Amazon OA 來了,相比去年,亞馬遜明顯在增加一些需要現場觀察和推導的題型,純靠背模板已經越來越難吃到滿分。這次依然是標準配置: Amazon OA Hackerrank (平臺), 2道coding題 + 70分鐘左右(部分角色還會出現Work Simulation)。我把4月出現頻率較高的真題整理出來,幫大家快速準備。

Amazon OA Hackerrank 4月真題放送|最新題型變化 + 高頻考點全解析(2026版)

4月 Amazon OA 整體配置(最新)

平臺:HackerRank
題量:2題
時間:70min(部分場次60min)

常見組合:

  • 1 道中等(偏思維)
  • 1 道中等偏上(偏實現 + 細節)

注意:幾乎沒有純簡單題

最少安全組數量

題目翻譯

一家金融服務公司向 AWS 請求部署其私有云網路。考慮到公司業務的敏感性,AWS 還建議他們新增一種特定型別的安全系統。

網路中共有 n 臺伺服器,第 i 臺伺服器的安全需求由 security[i] 表示,其中每個元素代表該伺服器的安全防護等級。

為了確保最高階別的防護,AWS 安全團隊在設計安全系統時遵循以下規則:

  • 同一個安全組內的所有伺服器,安全等級必須完全相同;
  • 任意兩個安全組內的伺服器數量,差值不能超過 1。

給定一個整數陣列 security,請計算為保障網路安全所需的最少安全組數量。

示例

輸入:n = 6security = [2, 3, 3, 3, 2, 1]

分組方案如下:

  • 等級 1:1 臺伺服器 → 1 個組
  • 等級 2:2 臺伺服器 → 1 個組
  • 等級 3:3 臺伺服器 → 2 個組(每組 1-2 臺,差值≤1)最終需要 4 個組。

函式要求

完成函式 findMinimumGroups(security),輸入為整數陣列 security,返回最少需要的安全組數量(整數)。

思路

統計各等級頻率,從最小頻率向下列舉基礎組大小S,若各頻率均可由S和S+1組成則累加組數

最大安全庫存總量

題目翻譯

作為汽車製造公司的物流經理,你負責將貨物儲存在安全倉庫中。

給定一個長度為 n 的陣列 deliveryLogs,其中第 i 個元素代表第 i 批貨物的零件數量;同時給定一個偶數 k,代表可用的安全倉庫數量。

貨物儲存規則如下:

  1. 每個倉庫只能儲存來自同一批貨物的零件,不同批次的貨物不能混存;同一批貨物的零件可以拆分到多個倉庫。
  2. 儲存完成後,貨物數量最多的 k/2 個倉庫會被入侵,無法計入安全庫存。
  3. 剩餘的 k/2 個倉庫是安全的,只有這些倉庫裡的貨物會被計入安全庫存。

你的任務是:計算最大可實現的安全庫存總量。

示例

輸入:n = 4deliveryLogs = [3, 5, 9, 6]k = 4

如果將每批貨物單獨存入一個倉庫,倉庫庫存為 [3,5,9,6]

此時貨物最多的 2 個倉庫(9、6)被入侵,剩餘安全庫存為 3+5=8

(最優方案可得到更高的安全庫存,需透過拆分批次實現)

函式要求

完成函式 secureMaximumDeliveries(deliveryLogs, k),輸入為整數陣列 deliveryLogs 和整數 k,返回最大安全庫存總量(整數)。

思路

利用貪心策略,透過列舉可能的中位數水位X,計算每個記錄能拆出多少個容量為X的塊及餘數,取前k大塊求和S,最大化 S – (k/2)*X 的值

虛擬機器租賃總收益

題目翻譯

在 Amazon EC2 中,共有 n 种虚拟机(VM)类型,每种类型有一定数量的可用实例。

每次租赁一个 VM 实例时,客户需要支付的费用等于:

所有 VM 类型中最小的非零可用数量 + 所有 VM 类型中最大的可用数量

共有 m 个客户依次前来租赁。每个客户始终选择当前可用数量最多的 VM 类型进行租赁;租赁后,该 VM 类型的可用数量减 1。

请计算完成所有租赁请求后,累计获得的总收益。

示例

輸入:n = 3vmStock = [0, 2, 4]m = 4

模拟租赁过程:

表格

客户 选择的 VM 类型 费用(最小非零 + 最大) 租赁后剩余库存
初始 [0, 2, 4]
1 3 号(4 个) 2 + 4 = 5 [0, 2, 3]
2 3 号(3 个) 2 + 3 = 4 [0, 2, 2]
3 2 号 / 3 号(2 个) 2 + 2 = 3 [0, 1, 2]
4 3 号(2 个) 1 + 2 = 3 [0, 1, 1]

总收益:5 + 4 + 3 + 3 = 15,因此答案为 15。

函式要求

完成对应函数,输入为 VM 库存数组 vmStock 和客户数 m,返回总收益(整数)。

思路

拿一个有序结构存库存和频次,每次取最小key和最大key,加起来,最大key的库存减一,减到0就删掉。循环m次完事。

包裹标签最大拆分份数

題目

亚马逊的一个团队需要确保所有包裹按标签正确排序。每个包裹的标签是一个大写英文字母,所有标签组成字符串 packages,其中第 i 個字元代表第 i 個包裹的標籤。

為了最佳化排序流程,團隊需要分析字串的每個字首(長度從 1 到 n),計算該字首最多能被拆分為多少個相等的部分,拆分需滿足:

  • 每個部分中,每個字元的出現次數,必須與其他所有部分完全相同。

給定字串 packages,請對每個字首長度 t(1 ≤ t ≤ n),計算該字首滿足條件的最大拆分份數。

示例

輸入:packages = "ABAB"

各字首的計算結果如下:

表格

字首長度 前缀字符串 說明 最大拆分份数
1 A 单字符无法拆分 1
2 AB A、B 各出现 1 次,无法拆分为多份 1
3 ABA A 出现 2 次、B 出现 1 次,无法拆分 1
4 ABAB A 出现 2 次、B 出现 2 次,可拆分为 2 份(”AB”+”AB”) 2

函式要求

完成对应函数,输入为字符串 packages,返回一个长度为 n 的数组,其中第 i 个元素代表前缀长度为 i+1 时的最大拆分份数。

思路

枚举可能的分段长度(必须是总长的因数),检查每段字符频率是否相同。每个位置维护一个最大段数,最后输出列表。

Amazon OA Hackerrank 冲刺阶段建议

如果你正在准备亚马逊SDE1、SDE2或Intern 2026 OA,这些高频题吃透后,通过率会显著提升。4月题目整体思路清晰,但需要较强的临时分析能力。

需要这些题的详细思路、Python/Java完整代码、更多变体,或者其他大厂(Meta、Google、字节、微软等)最新OA真题,或者咨询Programhelp的 OA輔助服務 都欢迎留言或私信。我会根据你的具体情况给出针对性建议。

祝大家4月及后续的亚马逊OA顺利通过,早日拿到心仪的Amazon Offer!继续加油~

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