← 返回博客列表 TikTok OA 面经|真题拆解 + 通过分阈值 + VO代面 / VO辅助 实战路径
TikTok

TikTok OA 面经|真题拆解 + 通过分阈值 + VO代面 / VO辅助 实战路径

2026-05-26

这是一篇「TikTok OA 面经怎么用」的方法论文章。我们不堆题号,只拆解你看到一道新题之后,下一步该怎么做。所有真题方向均来自 oavoservice 学员复盘,并经过去敏化处理。文末附 VO代面 / VO辅助 的实战路径。


一、TikTok OA 平台与节奏

TikTok 北美 OA 走 CodeSignal Industry Coding,4 题 70 分钟。每题不限分配时间,但常见的得分曲线是:

[Q1]  签到  10–15 min
[Q2]  实现  15–20 min
[Q3]  中等  20–25 min
[Q4]  偏难  剩余时间

通过分阈值在 600 / 800 上下。学员实测:Q1+Q2 全对约 350–400 分;Q3 部分对约 100–150 分;Q4 任何一个 hidden case 都加分。别死磕 Q4,先把 Q1–Q3 打满分再回头。


二、Q1/Q2 高频方向:签到与实现

真题方向 出现频次 关键解法
字符串频次统计 极高 Counter + 排序
数组前缀差 prefix_sum
简单模拟(投票 / 抽奖) 状态机
矩阵旋转 / 镜像 索引映射

学员还原题:投票合法性

给定一个投票序列 votes[i] = (voter, candidate, t),规则:每个 voter 只保留最后一次有效投票t 最大者);返回得票最多的候选人,若并列返回字典序最小者。

def winner(votes):
    last = {}
    for voter, cand, t in votes:
        if voter not in last or last[voter][1] < t:
            last[voter] = (cand, t)
    cnt = {}
    for cand, _ in last.values():
        cnt[cand] = cnt.get(cand, 0) + 1
    return min(sorted(cnt.items(), key=lambda x: (-x[1], x[0])))[0]

复杂度:O(n log n)。坑点:并列字典序最小,别忘了二级排序条件。


三、Q3 高频方向:前缀和 + 二分 / 双指针

学员还原题:最长子数组使其和 ≤ K

给定整数数组(含负数)和阈值 K,找最长连续子数组使其和 ≤ K。

import bisect

def longest_subarray_sum_le_k(nums, K):
    n = len(nums)
    prefix = [0] * (n + 1)
    for i in range(n):
        prefix[i + 1] = prefix[i] + nums[i]
    sorted_prefix = []
    best = 0
    for j in range(n + 1):
        # 找到最早一个 prefix[i] >= prefix[j] - K
        target = prefix[j] - K
        idx = bisect.bisect_left([p for p, _ in sorted_prefix], target)
        if idx < len(sorted_prefix):
            i = sorted_prefix[idx][1]
            best = max(best, j - i)
        # 维护「单调最早 prefix」
        while sorted_prefix and sorted_prefix[-1][0] >= prefix[j]:
            sorted_prefix.pop()
        sorted_prefix.append((prefix[j], j))
    return best

复杂度:实际 O(n²) 朴素版会超时,必须借助 单调结构 + 二分 才能 AC 全部 hidden case。


四、Q4 高频方向:图论 / DP

学员还原题:最短路径着色

在 n×m 网格上从 (0,0) 走到 (n-1, m-1),每个格子有颜色 c[i][j](取值 1..k)。要求路径上相邻格子颜色不同。求最短路径长度,无解返回 -1。

from collections import deque

def shortest_color_path(grid):
    n, m = len(grid), len(grid[0])
    dist = [[-1] * m for _ in range(n)]
    dist[0][0] = 0
    q = deque([(0, 0)])
    while q:
        x, y = q.popleft()
        for dx, dy in [(-1, 0), (1, 0), (0, -1), (0, 1)]:
            nx, ny = x + dx, y + dy
            if 0 <= nx < n and 0 <= ny < m and dist[nx][ny] == -1 and grid[nx][ny] != grid[x][y]:
                dist[nx][ny] = dist[x][y] + 1
                q.append((nx, ny))
    return dist[n - 1][m - 1]

复杂度:O(n × m)。坑点:起点和终点颜色相同时也合法,只要中间路径相邻不同色。


五、得分分布与通过分阈值

样本 22 份 OA:

[700-800] █          5%
[600-699] █████     27%
[500-599] ████████  41%
[400-499] █████     22%
[<400]    █          5%

通过分中位数 600,Q1+Q2+Q3 主体满分基本就够。Q4 是分水岭题,做出 1–2 个 hidden case 就能从 600 拉到 700+,进入下一轮的概率显著上升。


六、TikTok OA 反作弊详解

反作弊机制 触发表现 应对方式
强制摄像头 切镜头 / 离开座位即 flag 设备与房间布置预演
屏幕共享 切屏 3 次警告 单屏作答 + 提前整理素材
剪贴板拦截 外部粘贴失败 编辑器内提前 stage 模板
编辑器内复制 允许 模板预置 + 快捷键熟练
节奏分析 提交节奏异常会标记 节奏控制 mock

oavoservice 在 OA 阶段提供 题型预测、限时 mock、得分诊断、全程 VO代面 / VO辅助 一站式方案,从拿到链接到提交答案的整个窗口 mentor 全程在线。


七、3 周备战节奏

周次 任务
W1 CodeSignal 限时 mock × 5 + Q1/Q2 不丢分
W2 Q3 题型库(前缀和、滑窗、图论)专项训练
W3 Q4 高频 DP / 图论冲刺 + 全模拟

FAQ

TikTok OA 是必考的吗?

社招、NG、Intern 几乎都要过 OA。Referral 路径偶尔可以跳过 OA 直接 VO,但占少数。

TikTok OA 重考机会有吗?

平台层面没有「重考链接」。冷冻期约 6 个月,期间换岗位 / 换 BU 投是绕开冷冻的常见做法。

TikTok OA 能用 ChatGPT 吗?

CodeSignal 会拦截外部粘贴 + 摄像头 + 屏幕共享,单纯靠浏览器外的 GPT 风险极高。oavoservice 提供更稳的方案:mentor 全程实时辅助 + 题型预测 + 节奏控制。

TikTok OA 之后多久收 Coding 安排?

通常 1–2 周。超过 2 周没消息可以礼貌跟进 recruiter。

VO代面 / VO辅助 怎么对接 OA / VO 全流程?

oavoservice 在 OA 阶段提供 题型预测、限时 mock、全程实时辅助;VO 阶段提供 思路即时辅助、白板复盘、HM mock。从首轮 OA 到 final HM 一站式打包。


正在准备 TikTok OA?

oavoservice 跟踪 TikTok OA 高频题已经超过 2 年。提供 题型预测、限时 mock、得分诊断、VO代面 / VO辅助 全链路服务。

👉 立即添加微信:Coding0201获取 TikTok 当周 OA 真题与 VO辅助 方案


联系方式

Email: [email protected]
Telegram: @OAVOProxy