最近为了准备 Amazon 2026 Summer SDE 的实习申请,我系统性地刷了一遍亚麻的 OA 题库。这场正式的 Online Assessment 做下来,整体节奏非常流畅,两道题目都在 70 分钟内一次通过(AC)。
这两题是非常典型的 Amazon HackerRank 风格:没有复杂故事背景,直接考察纯逻辑推理与工程实现。这类题并不依赖 LeetCode 那些复杂算法,而是要求你能把业务规则拆成清晰、可执行的代码逻辑,对代码速度、思路条理和工程化思维都有不低要求。
下面按照真实的考试体验,为大家详细复盘这次 OA 的流程,并对两道题目做深度拆解。
整体流程与个人节奏
进入 HackerRank 后,界面一如既往地简洁,直接展示两道题,70 分钟倒计时开始。
我先快速通读两题题意,确认难度在预期范围内,没有特别生硬的算法。随即决定解题顺序:
先做需要数学逻辑拆解的第一题,再做实现更直观的第二题。
因为之前做过不少亚麻 OA,当天看到的内容非常熟悉。它们并不是那种“看到就知道用什么算法模板”的题,而是更偏向系统逻辑拆分与数据处理。只要理解规则,把约束条件用工程化的方式落实成代码,AC 基本没有悬念。
Problem 1: Compute Minimum Groups Based on Server Security Levels
第一道题是关于服务器安全等级分组的。给你一堆服务器,每台都有一个安全等级。要求是同一组的服务器等级要一样,而且所有组的大小要么相同,要么最多差 1,然后问最少需要多少组。我的做法是先统计每个等级的服务器数量,比如 A 级 10 台,B 级 7 台,C 级 3 台,这样得到一个频次数组。核心思路是找一个组大小 g,让每个等级的服务器数量都能拆成若干组,每组大小是 g 或 g+1。然后遍历所有可能的 g,从 1 到最大频次,逐个验证每个 g 是否可行,能行的话就算总组数,最后取最小的。这个方法不用复杂算法,主要是枚举和验证可行性,逻辑清楚、工程化。
Problem 2: Maximum Bandwidth Contribution with Primary–Secondary Pairing
这道题是关于最大带宽贡献。给你一堆节点带宽,还有一个 streamCount,意思是要选前 streamCount 个节点作为 primary,每个 primary 要配一个剩余带宽最大的 secondary。首先把带宽数组降序排序,然后取前面几个最大的作为 primary。配对策略很简单,每个 primary 就拿当前最大的剩余值作为 secondary,如果需要可以自己配自己,因为题目允许重复使用。最后累加每个 primary 和对应 secondary 的值,就是最大总贡献。思路很直观,就是降序 + 贪心配对,不会出什么意外。
整体总结与备考建议
这一套 26 Summer SDE OA 非常具有亚麻特色:
1. 重逻辑拆解,轻算法技巧
核心不在于你是否会某个冷门算法,而在于你是否能快速读懂规则,把它实现正确。
2. 数据规模合理,不需过度优化
题目鼓励清晰的工程实现,不需要不必要的微优化。
3. 时间管理是关键
70 分钟两题,要求你在实现时尽量减少 debug 时间,理解越清晰,越能一次 AC。
给备考同学的建议
- 刷题不要只看 LeetCode 的 Hard,建议多刷亚麻历年 OA 真题
- 练习“阅读理解能力”与“规则拆解能力”
- 写代码前先把约束条件画出来,整理成几个逻辑分支
- 熟悉 HackerRank 的节奏与输入输出格式
只要能做到:
理解清晰 + 稳定实现
亚马逊 OA 基本都能顺利通过。
祝大家都能顺利拿下亚麻的 Offer!
理解了逻辑只是第一步,完美的考场执行力才是拿下面试的关键
你已经付出了 99% 的努力,千万别倒在最后这 1% 的临场发挥上。为什么不给自己的求职之路上一道“双保险”?ProgramHelp 专注于解决关键时刻的“掉链子”问题。无论是需要 OA 实时稳定助攻,还是需要资深面试官进行 VO辅助,我们都在这里,确保你展现出最佳状态。把压力和风险交给我们,你只需要负责自信地拿下 Offer。