在竞争激烈的 fintech 赛道,Optiver 的招聘极具吸引力,而 Optiver OA 是迈向量化金融职业的关键第一步。对想进量化的人来说,这一关考的不是单一技能,而是数感 + 概率直觉 + 编程基础 + 博弈思维的组合。下面按四大题型逐类拆解,每类都给解法和可迁移的口算心法。
一、题型概览
| 题型 | 考点 | 关键心法 |
|---|---|---|
| Number Logic | 数列找规律 | 先看一阶差,再看二阶差 |
| Beat The Odds | 二项概率 | C(n,k)·p^k·(1-p)^(n-k) |
| Programming | 基础编程 | 写对边界,别炫技 |
| Brain Game | 帽子奇偶博弈 | 用奇偶性传递一个 bit |
二、Number Logic:数列找规律
题目:下列数列的下一个数是多少:2, 6, 12, 20, 30, ...?
思路:先算相邻差值:4, 6, 8, 10——这是一个等差为 2 的二阶数列。所以下一个差值是 12,下一项 = 30 + 12 = 42。
# 验证:第 n 项 = n*(n+1)
seq = [n * (n + 1) for n in range(1, 7)]
# [2, 6, 12, 20, 30, 42]
口算心法:数列题第一步永远是「一阶差」;如果一阶差不规律,再看「二阶差」或比值。本题一阶差成等差,是最常见的二次型数列 n(n+1)。
三、Beat The Odds:二项概率计算
题目:每次游戏你有 60% 的获胜概率。玩 3 次,恰好赢 2 次的概率是多少?
思路:典型二项分布。P(X=2) = C(3,2) · (0.6)² · (0.4)¹。
$$P(X=2) = 3 \times 0.36 \times 0.4 = 0.432$$
答案:0.432(43.2%)。
from math import comb
def binomial(n, k, p):
return comb(n, k) * (p ** k) * ((1 - p) ** (n - k))
print(binomial(3, 2, 0.6)) # 0.432
口算心法:二项题先定 C(n,k)(这里是 3),再乘 p^k 和 (1-p)^(n-k)。0.6²=0.36,×0.4=0.144,×3=0.432,全程心算可完成。Optiver 这类题常要求30 秒内出答案,公式必须形成肌肉记忆。
四、Programming:基础编程题
题目:写一个 Python 函数,判断字符串是否为回文。
def is_palindrome(s: str) -> bool:
return s == s[::-1]
print(is_palindrome("racecar")) # True
print(is_palindrome("hello")) # False
注意点:Optiver 编程题通常不刁钻,考的是正确性和边界而非花式算法。如果题目要求忽略大小写 / 非字母字符,记得先归一化:
def is_palindrome_clean(s: str) -> bool:
cleaned = [c.lower() for c in s if c.isalnum()]
return cleaned == cleaned[::-1]
别在简单题上炫技——清晰、正确、覆盖边界,就是满分答案。
五、Brain Game:帽子奇偶博弈
题目:100 个人排成一列,每人戴红色或蓝色帽子。每个人能看到别人的帽子但看不到自己的,且必须同时猜测自己帽子的颜色。什么策略能最大化猜对的人数?
答案:用蓝帽子的奇偶性编码信息。
- 第 1 个人(站在队尾、能看到前面所有人):如果看到的蓝帽是奇数就喊「蓝」,偶数就喊「红」。他相当于把「全场蓝帽数的奇偶性」这个 1 bit 广播出去(他自己有 50% 概率猜错,是唯一可能牺牲的人)。
- 之后每个人:结合「初始奇偶性」与「已经听到的、自己前面所有人喊出的颜色」,就能推出自己帽子的颜色,从而保证至少 99 个人猜对。
设初始宣告的奇偶性为 P(蓝帽奇偶)。
第 k 个人 = P XOR (他能看到的前方蓝帽奇偶) XOR (他已听到的后方蓝帽奇偶)
推出自己是不是蓝帽。
心法:这类「同时猜测 + 信息共享」博弈题,核心几乎都是用奇偶性(parity)传递一个 bit。认出这个模式,就能秒解一大类变体。
六、总结
Optiver OA 四大题型分别考:数感(数列差分)、概率直觉(二项公式)、编程基础(正确性 + 边界)、博弈思维(奇偶传 bit)。准备时不要只刷算法,要把心算速度和概率公式练到条件反射,博弈题则重点积累「奇偶 / 信息论」这类经典套路。
FAQ
Q1:Optiver OA 考哪几类题?
四类:Number Logic(数列找规律)、Beat The Odds(二项概率)、Programming(基础编程)、Brain Game(博弈 / 脑筋急转弯)。偏量化思维,不是纯算法刷题。
Q2:数列题没头绪怎么办?
固定流程:先算一阶差,不规律再算二阶差或相邻比值。本题一阶差 4,6,8,10 成等差,对应 n(n+1) 型,下一项 42。
Q3:概率题怎么快速算?
记牢二项公式 C(n,k)·p^k·(1-p)^(n-k),分步心算:先 C(n,k),再乘幂次。Optiver 常要求 30 秒内出答案,公式要形成肌肉记忆。
Q4:帽子博弈题的通法是什么?
用奇偶性传一个 bit:第一个人宣告全场某色帽的奇偶,后续每人结合初始奇偶 + 已知信息推出自己,保证 n-1 人猜对。认出 parity 模式即可解多数变体。
正在准备 Optiver OA?
Optiver OA 考数感 + 概率 + 编程 + 博弈四维组合。oavoservice 提供量化 OA 专项陪练:数列 / 概率限时心算训练、博弈题套路梳理、编程题边界打磨,按岗位线定制题型预测与练习计划。教练熟悉 Optiver 等量化机构的评分节奏。
立即添加微信 Coding0201,获取量化 OA 真题与陪练。
联系方式
- 微信:Coding0201
- Email:[email protected]
- Telegram:@OAVOProxy