| 题号 | 题型 | 答案 | 考点 | 解题思路 |
|---|---|---|---|---|
| 第 1 题 | 选择题 | D | 数据存储单位 | 这题核心就是进制转换。拿到题别慌,先把所有选项都统一成十进制,心里默默做个加法,哪个算出来不一样,那个就是答案。 |
| 第 2 题 | 选择题 | D | 编译与解释 | 拿到题先想‘编译’和‘解释’的本质区别:编译是整体翻译生成独立可执行文件,解释是逐行翻译边翻译边执行。再看选项里哪些语言是解释型,C/C++/Pascal都是编译型,只有Pytho… |
| 第 3 题 | 选择题 | B | 计算机基础与编程环境 | 这题考的是 NOI 历史,别被 CCF 成立时间带偏。记住:学会 1962 年成立,但竞赛是 1984 年才有的,题目问的是竞赛创办年份,直接锁定 1984 即可。 |
| 第 4 题 | 选择题 | A | 树形结构 | 这题就是考等比数列求和,拿到题先想:根是k^0,每层乘k,加到第h层,直接套公式,别把根漏了。 |
| 第 5 题 | 选择题 | D | 数论基础 | 这题本质就是反复累加。别急着套公式,顺着递推式一层层往下拆,把 T(n) 写成 T(n 1)+n,再把 T(n 1) 写成 T(n 2)+(n 1),一直拆到 T(0),你会发现它… |
| 第 6 题 | 选择题 | B | 栈(stack) | 这题考前缀表达式(波兰式)。拿到题先别急着背规则,直接看运算顺序:谁先算谁就往前放。这题里乘法比减法优先级高,所以先把两个乘法项各自打包成前缀,再把减法放在最前面,最后把打包好的两… |
| 第 7 题 | 选择题 | B | 函数与映射 | 这题别急着套公式,先想清楚几何意义:两个点在单位正方形里随机撒,求它们横坐标差的绝对值的平均值。把正方形沿对角线切开,算出一半的积分再乘2,或者用对称性直接算三角形面积,答案立马出… |
| 第 8 题 | 选择题 | A | 递推 | 这题考的是卡塔兰数(Catalan 数)的四种经典组合意义。拿到题先别急着套公式,脑子里过一遍那四个场景:二叉树、括号匹配、出栈序列、多边形三角剖分。关键要盯准每个场景里数字 n … |
| 第 9 题 | 选择题 | D | — | 这题别被'足够多的人'绕晕,核心就是算单个人的期望。每人必得一个红球,蓝球呢?抽中蓝继续、抽中红就停,这就是个典型的几何分布,算一下蓝球期望值,答案自然出来了。 |
| 第 10 题 | 选择题 | B | 进制与编码、循环结构 | 别一上来就右移,先想怎么让循环次数直接等于1的个数——用 x &= x 1 每次消掉最低位的 1,循环次数自然就是答案。 |
| 第 11 题 | 选择题 | AB | — | 这题就是考考场纪律,别被‘关机’‘草稿纸’这些迷惑项带偏,记住:电子设备一律禁带,草稿纸考场发,只能带笔和橡皮。 |
| 第 12 题 | 选择题 | CD | — | 拿到题先别急着套公式,想想2 3树的性质:每层结点数是上一层的2~3倍。10个叶子,它的父结点层最多只能有5个(5×2=10),最少4个(4×3=12,但4个父结点带3个孩子就是1… |
| 第 13 题 | 选择题 | ABD | 最短路径 | 这题核心就是死磕 Dijkstra 的贪心前提——边权必须非负。拿到选项先想:有没有负权边?有没有负权环?一次跑能不能搞定所有点对?抓住这三个判断点,就能把四个选项逐个筛出来。 |
| 第 14 题 | 选择题 | ABD | — | 这题考图论里树的定义和等价性质。拿到题先想:树是连通无环图,那它的边数、路径唯一性、环的情况都得围绕这个核心去判断,C 选项里提到环直接就能排除。 |
| 第 15 题 | 选择题 | BCD | — | 这题纯粹考常识记忆,拿到题先锁定'ACM 还是 IEEE'这个核心区分点,再快速过一遍华人得主和奖项别称,排除法就能秒杀。 |
| 第 16 题 | 阅读程序 | AB | — | 丙去了,直接触发条件③把丁挡在外面;丁不在又让条件②的逆否把乙也挤掉;乙不在、甲却去了,这只能说明条件①的前件没成立,也就是那天没下雨。 |
| 第 17 题 | 选择题 | 454 | 位运算 | 看到位运算等式 → 先化简为子集包含关系 |
| 第 18 题 | 阅读程序 | 4 | 输入输出、分支结构、循环结构 | 别急着算平方,先盯着那个模运算条件。这题本质是找小于15的正整数里,哪些数的平方除以15余1。把0到14一个个代入看看,符合条件的就计数,最后输出。 |
| 第 19 题 | 阅读程序 | 6 | 输入输出、分支结构、循环结构 | 这道题考的是置换环分解。拿到题先别急着跑代码,把输入序列当成一个函数 f(i)=d[i],从每个未访问的 i 出发沿着 f 跳,直到回到起点,这就是一个环。把 n 个元素全部分解成… |
| 第 20 题 | 阅读程序 | 16 | 输入输出、位运算、分支结构、循环结构、字符串(string) | 看到 magic 函数 → 先想四进制转换规则 |
| 第 21 题 | 阅读程序 | 2 1 3 5 6 43 2 5 6 1 4 | 输入输出、分支结构、循环结构 | 程序回溯生成排列并判断条件(isSmall 比较字典序),输出满足条件的两个排列: 2 1 3 5 6 4 和 3 2 5 6 1 4 。 |
| 第 22 题 | 阅读程序 | a[x] = ii+1R[a[i]]a[i]R[i] | 输入输出、位运算、循环结构、链表 | 先按值从大到小建链表,删前右邻居即答案 |
| 第 23 题 | 完善程序 | a[i] * 0.95 <= b[i]b[i] >= a[i] * 0.950.95 * a[i] <= b[i]b[i] >= 0.95 * a[i]total_a >= thresholdthreshold <= total_atotal_a >= 5000050000 <= total_atotal_a + j + a[i]total_a + a[i] + ja[i] + j + total_aa[i] + total_a + jj + total_a + a[i]j + a[i] + total_af[j] + total_b - total_b_prefixf[j] - total_b_prefix + total_btotal_b + f[j] - total_b_prefixtotal_b - total_b_prefix + f[j]f[j - a[i]] | 分支结构、循环结构、简单动态规划、背包DP | 这题本质是贪心预处理加背包DP。先按单价把物品分好摊,算出商店A的总额;若总额不够50000,就考虑把原本在B买且B更便宜的那些物品‘切换’到A,用0 1背包求达到各额外消费额的最… |
建议按「限时做 → 对答案 → 读常见错误」三步走。先按考试的真实节奏做完,再回来看每一题的解析;尤其是"常见错误"那一段——它对应的是命题人反复设置的陷阱,读完能直接迁移到同类题上。
想做限时模考,可在 OI伴学 平台切换考试模式;错题会自动归集,并按考点推荐同类练习。