Uber OA 面经分享|三道高频题快速复盘与解题思路解析

66次閱讀
No Comments

最近刚通过 Uber OA,这一轮题目整体难度不算特别高,但非常考验建模能力和思路清晰度。很多题看起来不复杂,一旦方向错了就会非常耗时,所以趁热把题目和核心解法记录下来。

Uber OA 时间线参考

01/22 申请

01/29 收到 OA

01/29 完成 OA

02/05 Immigration Assessment

02/08 约面 (Uber的流程推得很快,HR太给力了。)

Uber OA 真题回顾

第一题|预算内最多买几个商品

题意
有一个已经排好序的商品价格数组,从左到右价格不递减。Alex 从给定位置 pos 开始往右走,每个摊位最多买一个,在不超过预算 amount 的前提下,问最多能买多少个商品。

思路
价格已经排好序,最优策略一定是先买便宜的。
直接从 pos 开始顺序累加价格,能买就买,直到总价超过预算停下即可。
实现可以线性扫一遍;想优化的话,先做前缀和,再用二分找到最远能到的位置。

第二题|支持更新的固定和配对统计

题意
给定两个数组 primary 和 secondary。
操作分为两类:一类是更新 secondary 中某个位置的值,另一类是查询满足
primary[i] + secondary[j] = targetSum 的配对数量。

思路
重点是避免每次查询都做双重循环。
用哈希表维护 secondary 中各个值出现的次数,更新时同步修改计数。
查询时遍历 primary,对每个值 x,直接在哈希表里查 targetSum – x 有多少个,累加就是答案。
更新快,查询稳。

第三题|电梯 + 楼梯的最优时间选择

题意
可以选择先坐电梯到某一层 i,再从 i 走楼梯到终点。
电梯阶段会消耗时间并增加能量,楼梯阶段会消耗能量且每层耗时与当前能量有关,过程中能量不能为负。
目标是让总耗时最小。

思路
这是一个典型的枚举分界点问题。
枚举电梯停在第 i 层的情况,先算电梯阶段的时间和剩余能量,再模拟从 i 到终点走楼梯的耗时。
只要过程中能量始终不小于 0,就是合法方案,记录对应时间,最后取最优即可。
整体一轮枚举就能做完。

了解更多

如果你对 OA 的通过率不太有把握,或者担心在关键题上卡住,其实提前借助成熟的经验体系会更稳一些。我们这边长期整理各家大厂的 OA 题型和常见套路,已经实实在在帮了数百名同学顺利推进流程、上岸大厂。需要高频题整理、思路辅助或想提升 OA 通过率的同学,欢迎随时 联系我们 了解更多。

author avatar
Jory Wang Amazon资深软件开发工程师
Amazon 资深工程师,专注 基础设施核心系统研发,在系统可扩展性、可靠性及成本优化方面具备丰富实战经验。 目前聚焦 FAANG SDE 面试辅导,一年内助力 30+ 位候选人成功斩获 L5 / L6 Offer。
正文完
 0