Goldman Sachs的 OA 我真的做过不少次了,每次都有点“平静外表下的小心机”。
这次 11.26 的 Goldman Sachs 26NG SDE OA ,整体还是那种:题目不吓人,但写得不够干净就真的会翻车。
整套是:2 道编程,8 道选择题,选择题有点 tricky,但可控;真正拉开差距的是两题 coding。

Coding Question 1
Q1: Sliding Window Log Transmission Counter
Given a stream of log events, each event has a timestamp and a tag.
You need to calculate for each new log event how many previous events with the same tag fall within a fixed sliding time window.
The window size is W.
Return the total accumulated transmission count across all logs.
Old events falling out of the window should be removed efficiently.
思路解析
这个题完全是看你能不能快速搭出**“滑动窗口 + 多标签队列”**的结构。
如果你写成暴力扫描数组,高盛直接让你 TLE。
最稳定的架构是:
- 一个全局队列(global queue)
- 用来记录所有日志的时间顺序
- 方便 O(1) 移除超时事件
- 一个字典:
tag → deque- 只维护相同标签的 timestamp
- 避免扫描整个历史列表
- 对每条日志
(t, tag):- 从该 tag 的队列中移除
t - W以前的 timestamps - 队列剩下的长度就是“窗口内同标签次数”
- 加到最终结果
- 把当前 timestamp 放进去
- 从该 tag 的队列中移除
这种结构属于“工程感非常强”的解法,也是高盛风格的最优答案。
Coding Question 2
Q2: Maximize Lock Value Based on GCD Rules
You are given an integer array
aand an integerm.
Find an integert(within a valid range related tom) that maximizes a custom lock value defined by the following rules:
For each elementaiin the array, computegcd(t, ai).
Ifgcd(t, ai) != 1, it contributes to the score.
Special conditions apply when all gcd values equal 1, or whentalready appears ina.
Return the maximum achievable lock value.
思路解析
虽然看起来像“伪系统设计题”,但本质就是:
数学模拟 + 合理枚举 + gcd 判断 + 处理边界条件。
稳妥写法如下:
✓ 枚举范围
t 的有效范围是:
t ∈ [max(1, m - n), m]
这是为了避免毫无意义的 t 影响复杂度。
✓ 对每个 t:
- 遍历数组
agcd(t, ai) != 1→ 计入贡献
- 如果所有 gcd = 1 → 按题目规则处理(通常是锁值清零或给基础值)
- 如果 t 在 a 中 → 要额外加/减 score(按原题要求)
- 更新最大锁值
✓ 难点在哪里?
- gcd 全为 1 的特殊情况容易漏
- t 在数组里怎么处理不容易记
- 枚举区间如果写错,会直接 TLE 或 WA
但总体难度:
结构简单,但细节密集。
整体体验:这套高盛 OA 就是“细节战”
做下来我最大的感受:
① 它不考花活,但极度重视代码结构
第一题写得乱的人基本稳挂。
滑动窗口、队列、字典这几个元素必须在心里组合好。
② 对数学直觉要求意外地高
第二题其实可以写爆,但只要你 gcd 和枚举范围想清楚,难度会立刻掉一个等级。
③ 选择题比多数银行更硬一点
它不是送分型,会有概率、逻辑、数组复杂度推断这种混合题。
整体难度不至于劝退,但确实是“没有准备就容易栽的那种”。
想稳过高盛 / 摩根 / 亚麻这类 OA?
这次带学员过高盛 OA,最大的感受还是——能写、写得快、写得稳,才是赢点。
但大多数同学卡的不是知识点,而是现场节奏、突然脑子一空、或者边界条件 patch 爆炸。
这也是 Programhelp 最常解决的问题。
我们提供的不是那种“暴力上机”,而是:
- 全程无痕联机协助(ToDesk/语音提示双路线)
- 现场帮你把解题思路拉直,不用慌、不用乱补逻辑
- 代码结构当场优化,减少低级 bug
- 复杂题给“关键一眼提示”,保证你不在分支里迷路
- 所有测试用例跑不通 = 不收费
如果你最近也在准备银行 / quant / 大厂 OA,不想把时间浪费在反复踩坑上,可以随时来问。我们已经陪跑过上千次 OA,会告诉你什么地方该冲、什么地方该稳、什么地方该直接 skip 才是高效策略。