当前位置: 首页 > news >正文

TikTok 2026 NG OA 全真题复盘|四道题难度递进,Teleport Labyrinth 翻车率最高

最近一批学员陆续收到了 TikTok 2026 年新题 OA。这轮题包一共四道,整体难度中等偏上,但第四道模拟题细节非常多,时间压力下很容易写崩。oavoservice 的导师团队已经带过多位候选人稳定 AC,下面把完整的题目拆解和最优思路分享出来,帮你少走弯路。


整体感受

  • 题目数量:4 道,限时 90-120 分钟(不同批次略有浮动)

  • 难度分布:前两题送分,第三题简单数学,第四题模拟 + 图论,是真正的分水岭

  • 语言:支持常见语言,本文以 Python/Java 思路讲解

  • 特点:题干都比较长,尤其是第四题需要仔细读规则,很多同学因为没看清 teleport 的触发条件和边界判定而卡测试用例


Question 1:Count Substrings With Vowels

题目大意

给定一个字符串chatMessage,统计所有长度为 3 的子串中,至少包含一个元音字母(a, e, i, o, u,不区分大小写)的子串数量。数据规模 n ≤ 1000。

思路

直接暴力滑窗 O(n) 即可。遍历每一个长度为 3 的窗口,检查三个字符中是否有元音,有则计数加一。时间复杂度 O(n),空间 O(1)。这题不允许超时,但 O(n²) 都能过,O(n) 更稳妥。

注意点

  • 大小写都要识别。

  • 子串必须严格长度 3,少于 3 的字符串直接返回 0。


Question 2:Consonant Cipher Shift

题目大意

有一个字符串memo,只对其中的辅音字母进行替换加密。规则是:每数到第 k 个辅音字母,就将其替换为字母表中的下一个辅音字母。辅音字母集合是固定的(b, c, d, f, g, h, j, k, l, m, n, p, q, r, s, t, v, w, x, y, z)。z 的下一个是 b。元音和所有非辅音字符保持原样,大小写也要保留。

思路

遍历字符串,用一个计数器count记录遇到的辅音字母序号。当count % k == 0时,对该辅音进行 shift。可以预先构建两个映射 map:一个记录“当前辅音 → 下一个辅音”(小写版),另一个同理大写版。处理时查表替换即可。时间复杂度 O(n),n ≤ 1000 轻松过。

易错点

  • 辅音列表没有 'h'?题目给的集合里包含 'h' 吗?检查一下集合里是有的,但注意“y”也算辅音。

  • 大小写映射要分开处理,不要一律 toLowerCase 再 toUpperCase,那样会丢失原本的大小写信息。

  • z 到 b 的循环要处理好,可以用模运算。


Question 3:Molecular Bond Pairing

题目大意

给定两个等长数组 x 和 y,定义“平衡因子”d[i] = x[i] - y[i]。要求统计所有下标对 (i, j),满足 i < j 且d[i] == d[j]的数量。N 未明确给出,但通常在 10^5 级别。

思路

先遍历一次计算出所有d[i],然后统计每个差值的出现频次。如果某个差值出现了 cnt 次,那么它对答案的贡献就是cnt * (cnt - 1) / 2,即组合数 C(cnt, 2)。最后求和即可。时间复杂度 O(N),空间 O(N)。这是典型的哈希表计数题。

注意点

  • 结果可能很大,需要用 64 位整数(Java long,Python int 自动支持)。

  • 题目要求 i < j,所以组合计数天然满足顺序,不需要额外处理。


Question 4:Teleport Labyrinth(翻车重灾区)

题目大意

一个 n x m 的网格迷宫,从左上角 (0, 0) 出发,只能向右移动(列坐标 +1)。网格中有障碍物(不可通过)和单向传送门(起点 → 终点)。规则:

  • 每次移动走到右边的格子。如果该格子是传送门起点,立即被传送到终点格子(不消耗额外步数)。

  • 如果移动后越界或撞到障碍物,停止。

  • 统计总共经过的格子数(包括起点和传送落点,重复经过也要算?按规则理解,应该是路径上访问过的所有格子,包括通过传送到达的格子)。

  • 如果无法到达右下角 (n-1, m-1),返回:

    • -1:因为障碍物阻挡或出界

    • -2:陷入无限传送循环

    • -3:既没被阻挡也没循环,但就是到不了终点(例如死胡同)

思路

这道题本质是一个状态模拟 + 循环检测问题。由于只能向右移动,一维路径上的每个状态可以用当前坐标表示。传送门会改变纵轴(行),可能跳转到不同行,但列坐标还是原来的列?仔细读:移动到右侧格子 [row, col+1],如果该格是传送起点,跳到 [end_row, end_col]。这意味着传送可能改变行和列,并且可能会跳到任意位置,可能导致路径变得复杂。但是移动始终是“向右一格”再检查传送。

因为移动逻辑是确定的,我们可以模拟整个行走过程,用一个 visited 集合记录访问过的坐标来检测循环。如果同一个坐标被访问两次,说明进入循环,返回 -2。

算法步骤:

  1. 读取 n, m, obstacles 和 teleports。将障碍物存进 set,将传送门起点到终点的映射存为 dict。

  2. 初始化 position = (0, 0),路径长度 count = 1(算上起点)。

  3. 创建一个 set 记录访问过的格子,如seen,加入起点。

  4. 循环:

    • 如果当前是终点 (n-1, m-1),返回 count。

    • 尝试向右移动:new_col = col + 1。如果 new_col >= m(越界),返回 -1。

    • new_pos = (row, new_col)。如果 new_pos 是障碍物,返回 -1。

    • count += 1(走过这个格子)。若 new_pos 是传送起点:跳转到 teleports[new_pos]。注意:传送落点本身也需要计数(题目说 including teleport endpoints)。然后检查落点是否障碍物?一般传送落点不会是障碍(题目未明说,但可假设),但需要检查落点是否越界。如果落点越界,返回 -1。然后更新当前位置为落点。

    • 否则,当前位置就是 new_pos。

    • 检查当前 position 是否已经在 seen 里:如果在,说明循环,返回 -2。否则加入 seen。

  5. 如果跳出循环(比如一直走不到终点),返回 -3。实际上循环检测会处理循环,而若没有循环且不能继续移动(例如右边越界)则返回 -1,所以正常模拟就能覆盖所有情况。

关键细节:

  • 路径计数要包含起点和每一次移动到的格子,以及传送落点。但如果在传送落点之后又通过循环回到已经走过的格子,计数是否重复加?题目要求“number of cells traversed, including start and teleport endpoints”,应该是遍历过的所有格子,重复经过也要计数。因此计数应该在每次移动和传送时累加,而不是用 set 去重格子数。但返回的条件是是否能到达终点,以及是否循环。所以上面模拟中count每次移动到新格子或传送落点时都增加,不管是否重复访问。这和题意“traversed”相符,如果是路径长度,重复经过也算。那么循环检测需要用 set 来判断坐标是否再次访问,以终止并返回 -2。

  • 需要小心传送落点可能触发再次传送吗?题目说“If you reach a cell that is a teleport start, you are moved instantly to its end cell”,传送落点如果本身也是传送起点,是否连锁触发?通常这种题不会连锁,传送只发生一次,落点只是普通格子。但最好确认。根据一般规则,传送后的落点不再触发传送,否则可能出现连锁复杂化。这里我们先按单次传送处理,如果落点又是起点则不会递归触发。如果题目没有明确,可以跟面试官确认,但 OA 我们只能根据常见设定来。

复杂度:每一步要么向右移动,要么传送后改变行,但列不减少?传送可能回到之前的列,造成循环,所以最坏情况会访问很多次。但因为有 visited 检测循环,整个过程会在有限步内终止。列总是增加?不,传送可能到任意列,可能导致列减少,从而形成循环。模拟过程中必须用 seen 保证不无限执行。最坏情况下可能遍历所有格子多次,但 n, m 范围一般不会极大(OA 常见 ≤ 100),模拟是可行的。


备考建议

TikTok 这套 OA 的前三题基本上是白送分,只要代码不出 bug 都能过。真正的筛选发生在第四题——你能不能在一个不那么“算法”的模拟题中,把规则一条条翻译成代码,同时妥善处理循环检测和边界。

很多同学平时刷题只练算法,一遇到这种“业务逻辑模拟”就直接傻眼,要么被题干的细节绕晕,要么在循环检测上漏 case,最后一两个测试用例怎么都过不去。


为什么你需要 oavoservice 的专业陪跑

OA 是拿到面试入场券的第一步,但容错率极低。错过一个 hidden test case,可能就是一封拒信。oavoservice 的 OA 实时陪跑服务 专门解决这个问题:

  • 导师均来自 TikTok、Google、Meta 等大厂,对各家 OA 的出题风格和评分标准了如指掌。拿到题目的瞬间就能锁定最优解法。

  • 完全符合你个人风格的原创代码,杜绝任何查重风险。导师手写实现,并帮你过一遍所有边界情况,确保全绿通关。

  • 不仅仅是给答案,更是教思路。陪跑过程中导师会拆解题目模型,让你之后遇到类似题型也能独立解决。

OA 通关后,更硬核的 VO 还在前面。oavoservice 的 VO 模拟陪练 由在职面试官 1:1 全真模拟,涵盖算法、系统设计、BQ 和项目深挖,帮你把每一轮的发挥打磨到极致。

别让一次 OA 的失误定义你的上限。用oavoservice一次专业的陪跑,换一张稳拿的 offer。

http://www.jsqmd.com/news/930164/

相关文章:

  • STM32F103用ADC采样+LCD实时画波形,开箱即用工程包
  • 东莞家庭除臭虫全攻略:轻松告别烦人小虫,安心居住每刻 - 品牌优选官
  • 冒险岛游戏编辑终极指南:一站式.wz文件与地图编辑解决方案
  • 基于Micro:bit的声控手机定位器:双击拍手检测算法与嵌入式实践
  • 3分钟掌握ComfyUI IPAdapter Plus:让AI绘画学会“看图说话“的神器
  • 【限时解禁】Sora 2内部法线生成管线首次公开:含3类不可见约束条件、4层微分渲染校准机制与1套评估基准
  • OmenSuperHub:释放惠普暗影精灵游戏本全部潜力的开源控制中心
  • ITSM现代化转型:从成本中心到战略引擎的核心架构与实践
  • Linux内核里那个默默无闻的‘搬运工’:SWIOTLB的bounce buffer机制详解
  • 哪个做表AI工具好用?数以轻舟Agent用“说人话“重新定义Excel效率
  • 基于YOLO26深度学习的晶圆体缺陷识别检测系统(项目源码+数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • OpenUtau完全指南:免费开源虚拟歌手软件,让音乐创作触手可及
  • 基于MQTT与Node-RED的工业PLC与智能家居系统集成实践
  • 从ISA-95 Part 3出发:手把手拆解一个“标准版”MOM系统该有哪些功能模块
  • 4个核心模块深度解析:Pearcleaner如何实现macOS应用的彻底清理
  • 家具设计师必看的Sora 2视频工作流(从SketchUp模型到4K动态展示片仅需22分钟)
  • 终极拆分APK安装解决方案:SAI让Android App Bundle安装变得简单高效
  • 基于ESP32与PWM的逆变器风扇智能调速系统设计与实现
  • 坐标杭州,2026意式极简全屋定制避坑白皮书——一篇看懂 - 高定
  • 2026年高稳定集成性主数据平台,功能全一站式智能优选 - 品牌2026
  • 基于Arduino Uno与DHT22的智能环境监测终端:从硬件改造到健康预警算法
  • 手把手教你用4张RTX 4090跑通MedicalGPT全流程:从数据清洗、LoRA微调到DPO对齐的保姆级记录
  • Sora 2游戏视频生成终极校准协议(OpenAI内部流出v1.3.2文档节选),含时间轴抖动补偿算法与NPC行为逻辑注入接口
  • Arduino互动蝙蝠制作:从PWM电机控制到状态机编程实践
  • 如何永久保存QQ空间历史记录:GetQzonehistory开源工具深度解析
  • YOLO26密集行人识别检测系统(项目源码+数据集+模型权重+UI界面+python+深度学习+远程环境部署)
  • 免费资源下载神器:res-downloader跨平台下载工具完全指南
  • 出租车区域小时级流量预测实战代码包:含LSTM/GRU/CNN-LSTM多模型实现与真实交通数据
  • 手机拍证件照全教程2026:拍摄方法+规范要求,手把手教你一次拍合格 - 软件小管家
  • Sora 2信息图表动画合规红线(2024Q2版):GDPR/CCPA/信安标委新规下动态数据可视化的5项强制约束