OA辅助 / 面试训练复盘

Netflix SWE OA 面试复盘|CodeSignal 两题:区间收益和实验分流如何写

Netflix SWE 的前置测评把代码速度和业务约束放在一起考。两道题都要写出可运行的实现:第一题优先把区间收益算清,第二题处理实验分流记录。60 分钟里,第一题不要停在样例,第二题要把边界和重复事件写进测试。

Netflix SWE OA 面试复盘|CodeSignal 两题:区间收益和实验分流如何写主题图解
训练主题配图 · 非客户现场证明

Netflix SWE 的前置测评把代码速度和业务约束放在一起考。两道题都要写出可运行的实现:第一题优先把区间收益算清,第二题处理实验分流记录。60 分钟里,第一题不要停在样例,第二题要把边界和重复事件写进测试。

第一题:连续片段的最大净收益

题目描述

给定每日内容曝光带来的收益 revenue[i] 与同日带宽成本 cost[i] ,选取一段连续日期,使净收益总和最大。区间必须非空;输出最大收益和对应的起止下标。追问要求在同样收益下返回更短的区间。

解题思路

优先把每一天转成 gain[i] = revenue[i] - cost[i] 。从左向右扫描,维护“以当前位置结尾的最佳区间”和它的起点。当前和小于零时直接从当前位置重新开始;当前和等于零时保留较晚的起点,后面更容易得到短区间。更新全局答案时按收益、长度、起点依次比较。这样不需要枚举所有区间,时间 O(n),空间 O(1)。

第二题:实验分流记录去重与配额检查

题目描述

输入一组按时间到达的事件,每条记录有 userId 、 experimentId 、 variant 与 timestamp 。同一用户在同一实验中只保留第一条有效分流;每个 variant 有上限,超过上限的记录要标为 rejected。输出每个 variant 的有效用户数,以及被拒绝记录的下标。

解题思路

用 Set<(userId, experimentId)> 拦住重复分流,再用哈希表记录每个 variant 的已用名额。处理一条记录时先查去重集合;重复记录不占配额。首次出现的记录再查配额,未满则写入集合并递增计数,已满则把下标放进 rejected。若事件并非时间有序,先按 timestamp 和原始下标稳定排序,输出时再按原始下标排序。核心是把“重复”与“配额已满”分成两个分支,避免重复事件误占名额。

做题过程如何分配

前 5 分钟优先把输入、输出和 tie-break 规则写在注释里。第一题控制在 20 分钟内完成并补负数数组、单元素、收益相同的区间。第二题预留 25 分钟,至少覆盖重复事件、配额为零、乱序时间戳和多个实验同时出现。提交前再读一次变量名和输出顺序;这类题最容易在规则解释正确时丢在实现细节上。

Netflix OA 备考建议

把 Kadane、哈希去重、排序后的稳定处理和事件流聚合放在一组练。Netflix 的候选人记录里既有 HackerRank 的编码与统计组合,也有 CodeSignal 之后进入现场轮的流程;优先把代码写完整,再用两三个自己构造的边界例子跑一遍更有效。想补充区间题,可以先看 Netflix OA 的候选人流程记录 中的测评描述。

FAQ

Netflix SWE OA 要不要准备统计题?

要。部分 SWE 流程把编码题和统计判断放在同一份测评里,复习时至少要能解释样本分流、比例和基础概率的含义。

第二题为什么不用双重循环查重复?

用户和实验的组合键可以直接放入 Set。事件量一上来,双重循环会拖慢整个实现,也会让配额逻辑更难读。

参考来源

Netflix Software Engineer Intern 候选人经历 Netflix SWE OA 与技术轮复盘 Netflix Software Engineer 美国岗位面试记录

联系 VOPathway

如果你希望把这套方法用于自己的 OA 或 VO 准备,可以把目标岗位、当前阶段、面试时间和主要难点发给 VOPathway,我们会据此安排针对性的练习与复盘。

  • 微信:Coding0201
  • 邮箱:[email protected]
  • Telegram:@OAVOProxy
  • WhatsApp:+86 178 6396 8105

可提供 OA辅助、OA辅导、VO辅助与 VO辅导。文章用于训练参考,不代表相关公司的官方流程;实际安排请以候选人收到的通知为准。

每一步,都更接近准备充分的自己。

本文用于面试准备与训练复盘。公司名称仅用于标识题型素材主题,不代表官方合作或录用承诺。

预约一次训练复盘 ↗