技术岗校招的笔试主体是编程机考。它和平时在题库网站上「点开题目写个函数」是两种考试:环境更原始、判分更严格、时间压力更大。先适应环境,再谈算法——这是机考准备里最容易被跳过、又最不该跳过的一步。
机考环境的三个差异
- ACM 模式:大多数公司机考要求自己读入标准输入、打印标准输出,而不是补全一个函数。没练过的人第一题就卡在「多组输入怎么读」「行末空格要不要」这类和算法无关的地方。考前必须用 ACM 模式练过至少 20 题;
- 部分分与通过率判定:判题按测试用例通过率给分,暴力解通常能过 30%–60% 的用例。这意味着「写不出最优解」不等于零分——先交一版暴力解保底,再优化;
- 在线编辑器:没有智能补全、跳转和本地调试器。常用的输入模板、调试打印宏要练到默写,别指望考场上现查。
题量与难度结构:签到题决定过线
典型机考 2–4 题、90–120 分钟,难度呈阶梯:一道签到题(数组/字符串模拟)、一两道中档题(双指针、BFS/DFS、简单 DP)、可能一道压轴。过线的关键是签到题满分 + 中档题拿到部分分,压轴题对绝大多数岗位不影响过线。所以时间分配上:签到题 20 分钟内收掉,剩余时间主攻中档题,压轴题只在前面全部稳住后才碰。
6 周刷题路线
- 第 1–2 周 数据结构基础:数组、字符串、哈希表、栈队列、链表的基本操作,全部用 ACM 模式写;每天 2–3 题,重点是「读题→建模→写对」的完整流程;
- 第 3–4 周 高频题型:双指针/滑动窗口、二分、BFS/DFS、DP 入门(背包、路径)。按题型集中练,每种题型练到能说出「什么特征的题用它」;
- 第 5–6 周 限时套题:每两天一套 2 小时全真模拟(用目标公司往年真题最好),严格计时、严格 ACM 模式。模拟后逐题复盘:没做出来的题归因是「题型没见过」还是「见过但写不对」。
刷题产生的错题——尤其是「见过但写不对」的题——按题型归档到错题邦,考前一周只复现错题,比刷新题有效得多。行测型笔试与编程机考并存的岗位(如银行金融科技岗),行测部分的准备见《国企银行秋招笔试》。
常见误区
- 只在本地 IDE 刷题:环境差异会在考场上集中爆发,至少最后两周全部切到在线 OJ;
- 追求最优解:机考是过线制不是竞赛,先交暴力解拿部分分永远是正确策略;
- 裸考试水:机考成绩很多公司跨岗位共享,试水挂掉可能影响同公司其他岗位投递。