🇺🇸 Amazon 最近又开始批量发 OA 了,我这场 Amazon OA 是 12 月 17 号收到的,
测试平台是 HackerRank,2 道 Coding 题,没有行为面,全程就是硬核做题。
整体感受是:
题目不算偏门,但题干很长、逻辑绕
如果读题不仔细,很容易一开始方向就错
时间压力不小,写代码之前一定要把规则捋清楚
下面是两道题的完整复盘。

第一题:Server Allocation + Cost Calculation
题意概述
- 给一个数组
servers - 下标表示服务器
- 数组值表示 当前服务器可用的空闲实例数量
现在有 m 位顾客,每位顾客 依次 来租服务器实例,规则如下:
- 每位顾客都会选择 当前空闲实例最多的服务器
- 选择后,该服务器的空闲实例数 减 1
- 在“选择之前”,会产生一次
cost
cost = 当前服务器中
最小空闲实例数
+ 最大空闲实例数
最终要求:
m 位顾客分配完成后,所有 cost 的总和
关键考点
这题表面是模拟,实际上考的是:
- 优先队列(Heap)
- 每一步都要 动态维护 min / max
- 非常容易写成 O(nm) 直接超时
正确思路方向(不贴代码,但给思路)
- 用一个 最大堆 维护当前空闲实例最多的服务器
- 同时维护一个 最小堆 或者能快速拿到当前最小值
- 每一轮:
- 先读取当前 min + max → 计入 cost
- 再 pop 最大值,减 1 后重新 push
坑点
- 多个服务器空闲数相同的情况
- 减到 0 之后是否还参与比较
- m 可能大于服务器总实例数(是否继续选)
这道题非常 Amazon 风格:
规则写得很长,但真正的难点在“你能不能保持状态一致”
第二题:Warehouses 分组 + 最大化最小半区总量
这道题明显比第一题难一档,读题本身就是第一道门槛。
题意拆解
已知:
- 有若干个
logs- 每个 log 有对应的 parts 数量
- 有
k个 warehouses(k 一定是偶数)
存储规则:
- 每个 warehouse 只能存储来自同一个 log 的零件
- 同一个 log 的零件 可以分散存到多个 warehouse
- 如果 warehouse 不够,可能会有部分 log 的零件无法存储
存储完成后:
- 将 warehouses 按存储零件数排序
- 前一半(
0 ~ k/2):存储的零件数 最多 - 后一半(
k/2 ~ k):存储的零件数 最少
目标
最大化:后一半 warehouses 的零件数总和
也就是说:
不是让总存储最多,而是
让“最差的一半”尽量不差
这题在考什么?
本质是一个:
- 资源分配 + 排序 + 贪心 / 二分 / DP 思维
- 非常像 Amazon 常出的: maximize the minimum / balance the worst case
思考方向(面试官期望)
- 你要意识到:
前一半 warehouse 存多少不重要
关键是怎么“抬高后半部分的地板” - 常见思路包括:
- 二分答案(猜后半最小和能不能达到)
- 贪心分配小块优先填后半
- 控制单个 log 被拆分的方式
这是那种:
写不完代码也没关系,但思路一定要对
为什么你需要 ProgramHelp 的OA实时辅助?
看完上面的解析,你可能觉得自己懂了。但在实际 OA 倒计时 90 分钟 的高压下,面对 HackerRank 黑底白字的 IDE,你真的能保证:
- Bug-free: 一次性写对 Heap 操作,处理好 Edge Cases(比如 max 减小后变成了 min)?
- 阅读理解: 在 5 分钟内读懂第二题那个绕口令一样的需求?
- 代码查重: 你的代码不会和 GitHub 上的一模一样而被 Flag?
不要拿你的 Dream Offer 赌博。
我们提供的 High-End 服务:
- 实时屏幕共享辅助 (Screen Share Support): 我们的算法专家与你实时连线,你在做,我们在看。遇到卡顿,直接语音/文字提示思路和代码。
- 原创代码保证: 每一行代码都由我们在副屏手写,符合你的 Coding Style,绝非网上的 Copy-Paste。
- All Cases Passed: 我们的目标不仅仅是做完,而是全绿。
推荐阅读 / 备考参考链接:
👉 亚马逊 SDE OA 全流程复盘|高频真题 + 备考建议一次讲清
📍 全面介绍 Amazon OA 形式、典型真题和准备策略,是你写 Amazon 面经时非常好的参考资料。Amazon SDE OA 全流程复盘|高频真题 + 备考建议一次讲清
👉 Atlassian OA 面经|ProgramHelp 全程语音助攻的真实体验
📍 ProgramHelp 在 Atlassian OA 中的实战使用复盘,可拿来作为“服务实际效果”的参考案例。Atlassian OA 面经|ProgramHelp 全程语音助攻的真实体验
👉 Jump Trading SDE 面经分享|ProgramHelp 远程助攻全程陪伴
📍 ProgramHelp 在金融科技公司现场和 VO 面试中的助攻案例分享,对准备量化或 SDE 面试也有启发。Jump Trading SDE 面经分享|ProgramHelp 远程助攻全程陪伴