C++ 竞赛入门
题目练习
递归单元练习
每道题先写出三个句子:函数参数表示什么,边界是什么,每次调用怎样让问题变小。使用小数据画出调用树,确认不会漏分支或无限递归后再提交。
| 难度 | 题目 | 题解 | 训练目标 |
|---|---|---|---|
| 基础 | 洛谷 P1028:数的计算 | 题解 | 有返回值的递归计数。 |
| 基础 | 洛谷 P1036:选数 | 题解 | 组合枚举和递归边界。 |
| 基础 | 洛谷 P1157:组合的输出 | 题解 | 固定长度选择。 |
| 巩固 | 洛谷 P1706:全排列问题 | 题解 | used 状态和回溯恢复。 |
| 巩固 | 洛谷 P1605:迷宫 | 题解 | 网格 DFS、访问标记与回溯恢复;先处理格子访问,再走向下一格。 |
| 挑战 | 洛谷 P1219:八皇后 | 题解 | 在排列枚举上增加合法性判断与剪枝。 |
完成后复盘一题:指出状态变量在哪一行修改、在哪一行恢复,以及删掉恢复语句会导致什么错误。