| 题号 | 题型 | 答案 | 考点 | 解题思路 |
|---|---|---|---|---|
| 第 1 题 | 选择题 | A | 数据存储单位、进制与编码 | 这题考无符号整数的表示范围。别被'32位'吓住,直接想2的32次方减1。用2^10≈10^3这个黄金换算,把2^32拆成4×2^30,瞬间就能估算出数量级是40亿,选A。 |
| 第 2 题 | 选择题 | B | 位运算、运算符与表达式 | 看到 x&(x 1) → 先转二进制对齐看最低位变化 |
| 第 3 题 | 选择题 | B | 递归函数 | 这题千万别直接硬算 calc(5),会绕晕。核心心法是:先算出所有更小的值,像填表一样。算出 calc(4) 和 calc(3) 后,最后一步直接相加。记住,偶数只跳一步,奇数要拆… |
| 第 4 题 | 选择题 | B | 哈夫曼树、树形结构 | 这题就是考哈夫曼树的构造和WPL计算。拿到题先别急着算,脑子里过一遍:把权值从小到大排,每次挑最小的两个合并,新生成的数放回队列里继续比,直到只剩一棵树。最后看每个原始权值在树里离… |
| 第 5 题 | 选择题 | B | 图的基本概念 | 这题考的是有向图里入度、出度与边数的关系。拿到题先想:每条有向边究竟给哪个顶点的度贡献了多少?顺着这个逻辑,入度之和、出度之和自然就能对应到边数。 |
| 第 6 题 | 选择题 | C | 排列组合基础、计数原理 | 这题考组合数与补集思想。拿到题先想:总数是多少?不符合条件的极端情况(全男、全女)各有多少?用总数减去这两个极端,就是‘男生女生都有’的选法。 |
| 第 7 题 | 选择题 | C | 逻辑代数、运算符与表达式 | 这道题考的是逻辑代数中的分配律和德摩根律。拿到题别急着硬算,先观察原式 (a && b) (!c && a) ,发现两个分支都有 a ,直接提取公因式化简成 a && (b !c)… |
| 第 8 题 | 选择题 | D | 同余与模运算 | 别硬算两千多次,模7的斐波那契数列必循环。先列前几项找皮萨诺周期,算出周期后直接取余定位,一步到位。 |
| 第 9 题 | 选择题 | B | 运算符与表达式 | 直接代入选项逐一验证,抓住 string 动态增长、运算符重载、length 与 size 等价、末尾\0 不计入长度这几个核心点,就能快速锁定 B。 |
| 第 10 题 | 选择题 | C | 运算符与表达式 | 这题别急着算交换,先盯紧参数定义!a 前面有个&,它是 x 的引用,改 a 就是改 x;b 没&,只是 y 的副本,改 b 不影响 y。顺着这三行代码一步步在纸上更新数值,最后看 … |
| 第 11 题 | 选择题 | B | 排列组合基础、计数原理 | 这题考的是组合数里的经典网格路径模型。拿到题先别急着算,心里要过一遍:从起点到终点,横着走几步、竖着走几步,加起来就是总步数。路径数就是在这总步数里挑出哪几步是横着走的——用组合数… |
| 第 12 题 | 选择题 | B | 排序基础 | 拿到题别急着套公式,直接拿笔在草稿纸上把数组抄下来,按照冒泡排序的规则,一趟趟地‘看’相邻两个数大不大,大就换,小就不换。数清楚一共换了几次,这就是答案。 |
| 第 13 题 | 选择题 | A | 进制与编码 | 这道题考进制转换和加法。拿到题别慌,先把八进制数老老实实转成十进制,再跟题目给的十进制数相加,最后把结果转回十六进制就行。记住,每一步都要算准,尤其是按权展开那步。 |
| 第 14 题 | 选择题 | C | 二叉树基础、树形结构 | 这题考完全二叉树的叶子数公式:⌈n/2⌉。拿到 1000 这种偶数,直接除以 2 就是答案;若是奇数,记得加 1 再除。别把公式记反了,那是坑。 |
| 第 15 题 | 选择题 | A | 栈(stack)、队列(queue) | 这题考查栈与队列的模拟操作。拿到题先别急着写代码,把输入序列和规则对应起来:奇数直接入栈,偶数看栈非空就弹栈顶入队,栈空则跳过。按顺序一步步走,栈的变化和出队顺序自然就出来了。 |
| 第 16 题 | 阅读程序 | ABD | 枚举法、循环结构、同余与模运算 | 这题本质是考三重循环枚举与两两互质的判定。拿到题先别急着算,先看懂代码逻辑:外层两层循环定下 i、j、k 的大小关系,最内层用三次 gcd 检查是否两两互质。判断语句能否执行,关键… |
| 第 17 题 | 阅读程序 | AB | 双指针、排序基础、循环结构 | 这题核心是排序去重后,用双指针维护当前元素能加入的最左组。i 从左往右扫,j 只增不减,while 条件 a[i] a[j+1] k 决定了 j 停在哪,答案直接接 ans[j]+… |
| 第 18 题 | 阅读程序 | ABD | 简单动态规划、字符串算法 | 这题考的是经典的最长公共子序列(LCS)DP。拿到题先别急着看选项,盯着代码里那个二维数组 f 的转移方程:先继承左边或上边的最大值,再判断当前字符是否相等,相等时加上左上角的值。… |
| 第 19 题 | 完善程序 | CB | 字符串算法、循环结构 | 这道题考行程长度编码(RLE)解码,拿到题先想:当前字符后面是不是数字?是就进位解析多位数并重复输出,不是就原样输出并单步前进,核心就是判断边界与数字累加。 |
| 第 20 题 | 完善程序 | BCDA | DFS(深度优先搜索)、枚举法 | 这题本质是多数投票算法的变体:利用‘两人互相指责必有一糊涂’的性质成对抵消,最后剩下的候选人就是精明人。 |
建议按「限时做 → 对答案 → 读常见错误」三步走。先按考试的真实节奏做完,再回来看每一题的解析;尤其是"常见错误"那一段——它对应的是命题人反复设置的陷阱,读完能直接迁移到同类题上。
想做限时模考,可在 OI伴学 平台切换考试模式;错题会自动归集,并按考点推荐同类练习。