TikTok / ByteDance NA OA in 2026 still runs the 110-minute, 7-question format — ~15 minutes per question, no slack. Unlike Meta CodeSignal's 4-question set, TikTok's 7 break down as 3 LC Easy + 3 LC Medium + 1 Hard closer. Below: 7 problem-type recap from 1point3acres + 110-minute pacing + 5-day sprint.
TikTok OA Snapshot (2026)
| Dimension | Detail |
|---|---|
| Platform | In-house / HackerRank (mixed) |
| Duration | 110 min (some roles 90) |
| Questions | 7 (some roles 5–6) |
| Difficulty | 3 Easy + 3 Medium + 1 Hard |
| Grading | Auto + hidden stress |
7 Problem Types
Type 1: Matrix Simulation (every set)
def spiral_traverse(grid):
if not grid:
return []
R, C = len(grid), len(grid[0])
res = []
top, bottom, left, right = 0, R - 1, 0, C - 1
while top <= bottom and left <= right:
for c in range(left, right + 1): res.append(grid[top][c])
top += 1
for r in range(top, bottom + 1): res.append(grid[r][right])
right -= 1
if top <= bottom:
for c in range(right, left - 1, -1): res.append(grid[bottom][c])
bottom -= 1
if left <= right:
for r in range(bottom, top - 1, -1): res.append(grid[r][left])
left += 1
return res
Type 2: String Transformation (Weighted Edit Distance)
def weighted_edit(s, t, ins_cost, del_cost, sub_cost):
m, n = len(s), len(t)
dp = [[0] * (n + 1) for _ in range(m + 1)]
for i in range(m + 1): dp[i][0] = i * del_cost
for j in range(n + 1): dp[0][j] = j * ins_cost
for i in range(1, m + 1):
for j in range(1, n + 1):
if s[i - 1] == t[j - 1]:
dp[i][j] = dp[i - 1][j - 1]
else:
dp[i][j] = min(
dp[i - 1][j] + del_cost,
dp[i][j - 1] + ins_cost,
dp[i - 1][j - 1] + sub_cost,
)
return dp[m][n]
Type 3: Graph (Shortest Path Variant)
Weighted graph, some nodes carry dwell-time constraints. Dijkstra + state expansion.
Type 4: Probability / Expectation
E.g. "with replacement, draw k times from n balls — probability that at least one color shows up twice". Inclusion-exclusion + factorials.
Type 5: Interval DP
Classic LC 1547 / 312 family. 1point3acres confirms one always shows up.
Type 6: Binary Search + Simulation
def max_groups_with_sum_at_least(arr, T):
arr = sorted(arr, reverse=True)
def feasible(g):
if g == 0: return True
cnt = 0
cur = 0
for x in arr:
cur += x
if cur >= T:
cnt += 1
cur = 0
if cnt == g:
return True
return False
lo, hi = 0, len(arr)
while lo < hi:
mid = (lo + hi + 1) // 2
if feasible(mid):
lo = mid
else:
hi = mid - 1
return lo
Type 7: Hard Closer (Mini System Design)
import heapq
from collections import defaultdict
class HotBoard:
def __init__(self, decay_sec=600):
self.decay = decay_sec
self.score = defaultdict(int)
self.last_ts = 0
def add(self, item, ts):
self.last_ts = ts
self.score[item] += 1
def hottest(self, k):
return heapq.nlargest(k, self.score.items(), key=lambda x: x[1])
110-Minute Pacing
| Phase | Min | Task |
|---|---|---|
| 0–10 | 10 | Read all 7, mark difficulty |
| 10–40 | 30 | Clear 3 LC Easy |
| 40–80 | 40 | Solve 2 LC Medium |
| 80–100 | 20 | Attack Q6 (binary search) |
| 100–110 | 10 | Q7 — at least brute force |
1point3acres reports: 5/7 → phone screen; 7/7 strongly correlates with onsite invitation.
5-Day Sprint
| Day | Task |
|---|---|
| D1 | Matrix simulation ×4 + string transform ×4 |
| D2 | Graph (shortest path + topo + Floyd) |
| D3 | DP (interval + bitmask + probability) |
| D4 | Binary search + simulation + sliding window |
| D5 | Full 110-min mock + debrief |
FAQ
Same OA bank for China and NA roles?
~70% shared bank, but languages differ. China-track has Chinese prompts; NA has English.
How hard is 7/7?
1point3acres 2026: ~12% candidates AC 7/7. 5/7 advances — that's the realistic target.
Same OA across business lines?
Same backbone; ByteDance Recommendation / TikTok Live / TikTok Shop add one extra domain question (recommendation / ranking / live-stream allocation).
Result timeline?
Usually 7–14 days. With AC ≥ 5/7, phone screen invites within a week.
Preparing TikTok / ByteDance OA?
We were glad to help this cohort pass the TikTok 110-minute 7-question OA. Many candidates told us they never paced LC practice in a 7-question 110-minute format — they froze on Q4 and ran out of time on Q5–Q7.
If you're prepping TikTok, ByteDance, Lemon8, or CapCut OA / VO and feel pacing is the limiting factor, contact oavoservice. We tailor OA assistance to your gaps and lock in the 110-minute pacing + 7-type bucketing.
👉 Add WeChat: Coding0201 — grab the TikTok 1point3acres prep pack.
Contact
Email: [email protected]
Telegram: @OAVOProxy