CSP 模拟 · CSP 2020 第一轮(初赛)模拟 第 7 题

选择题 · 答案 A

← 整套速查表 CSP 模拟 全部真题

题目

博艾中学进行了一次信息学会考测试,其优、良、及格、不及格的试卷数量分别为 $10,13,14,5$ 张。现在这些卷子混在一起,要将这些卷子按照等级分为 $4$ 叠。分卷子的方法是,每次将一叠有不同等级答卷的卷子分为两堆,使得这两堆中没有相同等级的卷子,然后可以再分,直到分为 $4$ 叠。要分完这些卷子,至少需要多少次“分卷子”的操作?将一堆数量为 $n$ 的卷子分成两堆,就会产生 $n$ 次分卷子的操作。

答案:A

解题思维

这题本质是二叉树叶子节点与内部节点的关系。4 叠对应 4 个叶子,每次分卷子相当于增加一个内部节点,所以总次数=叶子数 -1,直接套公式秒杀。

常见错误

学生容易把‘分卷子’次数当成总和 42,或者误以为每次能把所有卷子平均分,导致凑不出 4 堆。其实只要保证两堆等级互斥,哪怕堆大小悬殊也能分,所以最小次数只跟最终堆数有关,跟初始数量无关。

详细解析(节选)

这道题考查的是二叉树的基本性质:一棵有 n 个叶子节点的二叉树,其内部节点个数恰好为 n-1。题目中的‘分卷子’操作,就是把当前的一堆卷子(看作二叉树的一个节点)拆成两堆(产生两个子节点),这正对应二叉树中增加一个内部节点的过程。最终要得到 4 叠,也就是 4 个叶子节点,因此需要的内部节点数就是 4-1=3 次操作。这个结论与初始卷子总数 42 毫无关系,只要每堆里至少有两种不同等级,就能继续分下去;即使某堆只有一种等级,它也会成为叶子节点,不再参与后续分裂。命题人故意给出具体数字 10,13,14,5,就是想诱导学生去模拟分堆过程或计算总和,从而落入陷阱。思考心法:拿到题先别急着动手模拟,先抽象成树模型——4 个目标叶子,每次分裂增加一个内部节点,所以次数=叶子数 -1。避坑指南:别被大数字吓到,别尝试用贪心或动态规划去凑堆,那样只会越算越乱;也别误以为‘分卷子’次数等于卷子总数,那是完全错误的。考频与趋势:从历年 CSP 模拟和 GESP 真题来看,这类结合二叉树/树形结构性质的题目在 2020 年后出现频率明显上升,尤其在涉及‘分裂’‘合并’‘层级’等操作的场景,命题人偏爱用具体数字掩盖简单结论,让学生绕弯路。预测:未来这类题可能会换壳,比如改成‘合并堆’或‘平衡树’形式,但核心依然是叶子与内部节点的定量关系,只要抓住‘次数=叶子数 -1'这个公式,就能快速得分。

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断