面灵AI→

某公司 ACM 模式笔试复盘

轮次
笔试
时间
2026-10
来源
牛客网

《面试题目》

  1. ACM 模式下考的数组、字符串相关题目

《参考解析》

ACM 模式要注意什么:和力扣的核心代码模式不同,ACM 模式要自己处理输入输出,最容易翻车的点有几处。一是输入格式判断:题目会明确给出多组数据还是一次一组、以什么结尾,很多失败案例是循环条件写错导致多读或少读。二是输出格式:行尾空格、多个用例之间是否要空行、浮点数的精度要求,这些都会判错。三是语言差异:C++ 用 cin 时可以关同步(ios::sync_with_stdio(false))提速;Java 用 Scanner 容易超时,换 BufferedReader + StringTokenizer;Python 用 sys.stdin.read().split() 一次读完比逐行读快。四是数据范围:先看 n 的规模决定复杂度(1e5 一般要 O(n log n),1e3 可以 O(n²)),并用 long long 防溢出。

数组与字符串的高频考点:数组类以双指针(有序数组两数之和、移除元素、三数之和)、滑动窗口(最长无重复子串、最小覆盖子串)、前缀和与差分(区间和、区间加)、二分(旋转数组、查找边界)为主;字符串类以模拟(大数加减、字符串转整数)、哈希计数(字母异位词、字符统计)、以及回文(中心扩展 / 动态规划)为主。备考方法不是刷量,而是把这几个模板写熟到能默写,再练「读题 → 判数据范围 → 定复杂度 → 选模板」的流程。