清单文件CCF GESP六级
清单文件的附录部分(18 道题,含 4 道真题)。题目名称按洛谷官方全称核对,补充了难度和「验收点」——
GESP C++ 六级 · 洛谷专题练习清单
配套《GESP C++ 六级编程题备考模板手册》使用
覆盖:2023.09 — 2026.09 共 13 场 26 道真题 + 洛谷同类型专题练习
所有链接均为洛谷(luogu.com.cn)题目页 / 题单页
使用说明(给老师)
- 先真题、后专题:真题是最贴近命题风格的素材,专题练习用来补"模型不熟"。建议按「专题顺序」而非「题号顺序」刷。
- 每个专题 3~5 题即可:本清单每题都标注了"练什么",不需要全刷完。真正吃透 2~3 题 + 能默写模板,比刷 10 题但不总结有效得多。
- 难度对照:
普及−对应六级题 1 难度,普及/提高−对应六级题 2 难度。学生能稳定做出普及/提高−即具备满分能力。 - 验收标准:每道题做完后,能手写「状态定义 → 转移方程 → 边界 → 复杂度 → 是否要用 long long」五要素,才算过关。
零、必做:洛谷官方 GESP 六级真题题单
| 资源 | 链接 | 说明 |
|---|---|---|
| 洛谷官方题单 #556 | https://www.luogu.com.cn/training/556#problems | CCF GESP C++ 六级上机题,共 28 题,官方整理,含全部历年真题 |
| 洛谷题库 GESP 标签 | https://www.luogu.com.cn/problem/list?tag=129 | 可按 GESP 标签筛选题目 |
| 第三方知识点题单 | https://www.luogu.com.cn/training/966781 | 按六级知识点分类的补充题单 |
| 第三方 OJ 测试题单 | https://www.luogu.com.cn/training/714745 | 专治"样例过了但不得满分",适合自测 |
| 洛谷有题(客观题) | https://ti.luogu.com.cn/ | 选择题 + 判断题专项(50 分,别丢) |
真题在洛谷的题号(可直接搜索题号进入)
| 场次 | 编程题 1 | 编程题 2 |
|---|---|---|
| 样题 | P10250 下楼梯 | P10262 亲朋数 |
| 2023.09 | B3873 小杨买饮料(0/1 背包) | B3874 小杨的握手问题(逆序对) |
| 2023.12 | P10108 闯关游戏(线性 DP) | P10109 工作沟通(树 + 祖先) |
| 2024.03 | P10376 游戏(计数 DP) | P10377 好斗的牛(二分答案) |
| 2024.06 | P10721 计算得分(字符串 DP) | P10722 二叉树(子树懒标记) |
| 2024.09 | P11246 小杨和整数拆分(完全背包) | P11247 算法学习(贪心 + 不相邻) |
| 2024.12 | P11375 树上游走(二叉树编号) | P11376 运送物资(贪心 + 容量) |
| 2025.03 | P11962 树上漫步(树二染色) | P11963 环线(环形最大子段和) |
| 2025.06 | P13015 学习小组(完全背包) | P13016 最大因数(质因数 + 因数树) |
| 2025.09 | P14075 划分字符串(字符串划分 DP) | P14076 货物运输(走遍全树) |
| 2025.12 | P14919 路径覆盖(树形 DP) | P14920 道具商店(0/1 背包) |
| 2026.03 | P15800 选数(条件 DP) | P15801 完全二叉树(后序判定) |
| 2026.06 | P17012 条形蛋糕(完全背包) | P17013 满二叉树(后序判定) |
| 2026.09 | P17457 数组划分(前缀和 DP) | P17458 分树规划(子树大小) |
提示:真题题号以洛谷官方题单 #556 为准;本表题号已逐条核对,若个别题号因官方重编而变化,在题单内按题目名称搜索即可。
专题一:0/1 背包 ★★★★★(题 1 命中 5 次)
真题:B3873 小杨买饮料、P14920 道具商店
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1048 [NOIP2005] 采药 | https://www.luogu.com.cn/problem/P1048 | 普及− | 0/1 背包第一题,倒序遍历的必要性 |
| 2 | P1049 [NOIP2001] 装箱问题 | https://www.luogu.com.cn/problem/P1049 | 普及− | 体积=价值的变体,求"剩余最小" |
| 3 | P1060 [NOIP2006] 开心的金明 | https://www.luogu.com.cn/problem/P1060 | 普及− | 价值函数改变(价格×重要度) |
| 4 | P1164 小A点菜 | https://www.luogu.com.cn/problem/P1164 | 普及− | 0/1 背包求方案数,max 改成 sum |
| 5 | B3873 小杨买饮料(真题) | https://www.luogu.com.cn/problem/B3873 | 普及− | 求最小值 + 无解输出 + 容量裁剪 |
过关标准:能在不看书的情况下,说出"为什么 j 必须从大到小"。
专题二:完全背包 ★★★★★(题 1 命中 3 次)
真题:P11246 小杨和整数拆分、P13015 学习小组、P17012 条形蛋糕
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1616 疯狂的采药 | https://www.luogu.com.cn/problem/P1616 | 普及− | 完全背包模板,与 P1048 对照着做 |
| 2 | P1679 神奇的四次方数 | https://www.luogu.com.cn/problem/P1679 | 普及− | 求最小值的完全背包,最接近"整数拆分" |
| 3 | P2722 总分 Score Inflation | https://www.luogu.com.cn/problem/P2722 | 普及− | 完全背包模板,数据范围练习 |
| 4 | P17012 条形蛋糕(真题) | https://www.luogu.com.cn/problem/P17012 | 普及− | 切割问题建模 |
| 5 | P11246 小杨和整数拆分(真题) | https://www.luogu.com.cn/problem/P11246 | 普及− | 平方数当"物品" |
过关标准:能把 P1048 和 P1616 的代码并排写出来,只差一个循环方向。
专题三:线性 DP 与条件转移 ★★★★
真题:P10108 闯关游戏、P15800 选数
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1216 [USACO1.5] 数字三角形 | https://www.luogu.com.cn/problem/P1216 | 普及− | 线性 DP 入门,自底向上 vs 自顶向下 |
| 2 | P1002 [NOIP2002] 过河卒 | https://www.luogu.com.cn/problem/P1002 | 普及− | 二维网格 DP + long long |
| 3 | P10250 下楼梯(GESP 样题) | https://www.luogu.com.cn/problem/P10250 | 普及− | 递推型 DP,与"闯关游戏"同构 |
| 4 | P15800 选数(真题) | https://www.luogu.com.cn/problem/P15800 | 普及/提高− | 条件转移 + 后缀最值优化 + b[i]=0 特判 |
过关标准:能自己推出 dp[i] 的含义并说明为什么无后效性。
专题四:前缀和 · 差分 ★★★★
真题:P17457 数组划分(前缀和 + 平方代价 DP)
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P8218 【深进1.例1】求区间和 | https://www.luogu.com.cn/problem/P8218 | 入门 | 一维前缀和模板,必须 5 分钟 AC |
| 2 | P3397 地毯 | https://www.luogu.com.cn/problem/P3397 | 普及− | 二维差分,b[x2+1][y2+1] 的四个角 |
| 3 | P2367 语文成绩 | https://www.luogu.com.cn/problem/P2367 | 入门 | 一维差分区间加 |
| 4 | P17457 数组划分(真题) | https://www.luogu.com.cn/problem/P17457 | 普及/提高− | 前缀和 + 分段代价 DP,负数陷阱 |
过关标准:一维前缀和的公式 sum(l,r) = s[r] - s[l-1] 能脱口而出;差分右端点记得 r+1。
专题五:计数 DP / 取模 ★★★
真题:P10376 游戏
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P10376 游戏(真题) | https://www.luogu.com.cn/problem/P10376 | 普及− | 递推计数 + 取模,注意 a=b 时不除以 2 |
| 2 | P1077 [NOIP2012] 摆花 | https://www.luogu.com.cn/problem/P1077 | 普及− | 计数背包,方案数累加 |
| 3 | P1164 小A点菜 | https://www.luogu.com.cn/problem/P1164 | 普及− | 恰好花完钱的方案数(与摆花同构) |
| 4 | P10250 下楼梯(样题) | https://www.luogu.com.cn/problem/P10250 | 普及− | 递推计数入门 |
专题六:字符串划分 DP ★★★
真题:P10722 计算得分、P14075 划分字符串
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P14075 划分字符串(真题) | https://www.luogu.com.cn/problem/P14075 | 普及/提高− | dp[i] = 前 i 个字符最优,26 位掩码剪枝 |
| 2 | P10721 计算得分(真题) | https://www.luogu.com.cn/problem/P10721 | 普及/提高− | abc 重复段计分,同样是"枚举最后一段" |
| 3 | P1077 摆花 | https://www.luogu.com.cn/problem/P1077 | 普及− | 计数型"枚举最后一段",思路同构 |
| 4 | P1241 括号序列 | https://www.luogu.com.cn/problem/P1241 | 普及− | 字符串 + 栈 + 配对逻辑 |
过关标准:记住剪枝——一段内字母不重复 ⇒ 最多向前看 26 个字符。
专题七:二叉树遍历与建树 ★★★★★(客观题 + 题 2 必考)
真题:P10722 二叉树、P11375 树上游走
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1305 新二叉树 | https://www.luogu.com.cn/problem/P1305 | 入门 | 建树 + 先序遍历,字符节点 |
| 2 | P4913 【深基16.例3】二叉树深度 | https://www.luogu.com.cn/problem/P4913 | 普及− | 递归求深度,n 可达 10⁶ |
| 3 | P1030 [NOIP2001] 求先序排列 | https://www.luogu.com.cn/problem/P1030 | 普及− | 中序 + 后序 ⇒ 先序,递归分治 |
| 4 | P1827 [USACO3.4] 美国血统 | https://www.luogu.com.cn/problem/P1827 | 普及− | 中序 + 先序 ⇒ 后序,与上一题对偶 |
| 5 | P3884 [JLOI2009] 二叉树问题 | https://www.luogu.com.cn/problem/P3884 | 普及/提高− | 深度 + 宽度 + 两点距离(LCA 入门) |
| 6 | P4715 【深基16.例1】淘汰赛 | https://www.luogu.com.cn/problem/P4715 | 普及− | 满二叉树编号模拟 |
过关标准:先序「根左右」、中序「左根右」、后序「左右根」;能手写三序递归函数。
专题八:完全二叉树 / 满二叉树判定 ★★★★(最新命题趋势)
真题:P15801 完全二叉树(2026.03)、P17013 满二叉树(2026.06)
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P15801 完全二叉树(真题) | https://www.luogu.com.cn/problem/P15801 | 普及/提高− | 后序返回 (高度, 节点数, 是否 CBT) |
| 2 | P17013 满二叉树(真题) | https://www.luogu.com.cn/problem/P17013 | 普及− | 满二叉树 ⟺ 节点数 = 2ʰ − 1 |
| 3 | P5018 [NOIP2018] 对称二叉树 | https://www.luogu.com.cn/problem/P5018 | 普及+/提高 | 进阶:递归判断子树对称性 |
| 4 | P4913 二叉树深度 | https://www.luogu.com.cn/problem/P4913 | 普及− | 递归求高度的底座练习 |
过关标准:能说出"为什么退化成链时逐层 BFS 会退化到 O(n²),而递归后序是 O(n)"。
专题九:树 DFS · 子树大小 · 树形 DP ★★★★★(题 2 命中最高)
真题:P17458 分树规划、P14919 路径覆盖、P10109 工作沟通、P14076 货物运输
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P17458 分树规划(真题) | https://www.luogu.com.cn/problem/P17458 | 普及/提高− | 子树大小 + 枚举删边,最基础也最常考 |
| 2 | P1122 最大子树和 | https://www.luogu.com.cn/problem/P1122 | 普及/提高− | 树形 DP 入门,f[u] += max(f[v],0) |
| 3 | P1364 医院设置 | https://www.luogu.com.cn/problem/P1364 | 普及− | 树的带权重心,BFS/DFS 求距离 |
| 4 | P2015 二叉苹果树 | https://www.luogu.com.cn/problem/P2015 | 普及+/提高 | 树形背包(分组背包合并子树) |
| 5 | P2014 [CTSC1997] 选课 | https://www.luogu.com.cn/problem/P2014 | 普及+/提高 | 树形背包经典,与二叉苹果树同构 |
| 6 | P14919 路径覆盖(真题) | https://www.luogu.com.cn/problem/P14919 | 普及/提高− | 自底向上贪心 + 树形 DP,答案要 long long |
过关标准:邻接表建树 dfs(u, fa) 的模板能 3 分钟默写;无根树必须传 fa 跳过父亲。
专题十:树的路径与遍历代价 ★★
真题:P14076 货物运输
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P14076 货物运输(真题) | https://www.luogu.com.cn/problem/P14076 | 普及/提高− | 2×边权和 − 根到最远点距离(不是减直径!) |
| 2 | P3884 二叉树问题 | https://www.luogu.com.cn/problem/P3884 | 普及/提高− | 两点距离 = 到 LCA 距离的组合 |
| 3 | P1364 医院设置 | https://www.luogu.com.cn/problem/P1364 | 普及− | 距离求和类 |
专题十一:贪心 + 哈夫曼 ★★★
真题:P11247 算法学习、P11376 运送物资
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1090 [NOIP2004] 合并果子 | https://www.luogu.com.cn/problem/P1090 | 普及− | 哈夫曼模板,小根堆 greater<> |
| 2 | P2168 [NOI2015] 荷马史诗 | https://www.luogu.com.cn/problem/P2168 | 普及+/提高 | k 叉哈夫曼,需补 0 叶子 |
| 3 | P1803 凌乱的yyy / 线段覆盖 | https://www.luogu.com.cn/problem/P1803 | 普及− | 区间调度,按右端点排序 |
| 4 | P1094 [NOIP2007] 纪念品分组 | https://www.luogu.com.cn/problem/P1094 | 普及− | 双指针贪心 |
| 5 | P11247 算法学习(真题) | https://www.luogu.com.cn/problem/P11247 | 普及/提高− | 贪心 + "不相邻"可行性判定 |
过关标准:哈夫曼 WPL 计算能手工验算(如 5,1,6,2 → 25)。
专题十二:二分答案 ★★★
真题:P10377 好斗的牛、P11376 运送物资
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P2678 [NOIP2015] 跳石头 | https://www.luogu.com.cn/problem/P2678 | 普及/提高− | 二分答案第一题,最大化最小值 |
| 2 | P1182 数列分段 Section II | https://www.luogu.com.cn/problem/P1182 | 普及/提高− | 最小化最大值,check 函数写法 |
| 3 | P2440 木材加工 | https://www.luogu.com.cn/problem/P2440 | 普及− | 更简单的二分,适合入门 |
| 4 | P1873 [COCI] 砍树 | https://www.luogu.com.cn/problem/P1873 | 普及− | 二分 + long long 求和 |
| 5 | P10377 好斗的牛(真题) | https://www.luogu.com.cn/problem/P10377 | 普及/提高− | 二分 + 合法性排列检验 |
过关标准:能说出"使用二分答案的两个前提:单调性 + check 可快速验证"。
专题十三:数论 · 素数筛 · 因数 ★★
真题:P13016 最大因数
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P3383 【模板】线性筛素数 | https://www.luogu.com.cn/problem/P3383 | 普及− | 欧拉筛模板,必背 |
| 2 | P3912 素数个数 | https://www.luogu.com.cn/problem/P3912 | 普及− | 埃氏筛应用 |
| 3 | P1075 [NOIP2012] 质因数分解 | https://www.luogu.com.cn/problem/P1075 | 普及− | 最大质因数 = n ÷ 最小质因数 |
| 4 | P13016 最大因数(真题) | https://www.luogu.com.cn/problem/P13016 | 普及/提高− | 最小质因子链 + 因数树距离 |
关键性质:一个数的最大真因数 = 该数 ÷ 它的最小质因子。
专题十四:归并排序 · 逆序对 ★★
真题:B3874 小杨的握手问题
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1908 逆序对 | https://www.luogu.com.cn/problem/P1908 | 普及− | 归并/树状数组求逆序对模板 |
| 2 | P1116 车厢重组 | https://www.luogu.com.cn/problem/P1116 | 入门 | 冒泡交换次数 = 逆序对,最直观 |
| 3 | P1177 【模板】快速排序 | https://www.luogu.com.cn/problem/P1177 | 普及− | 排序本身 + 分治思想 |
| 4 | B3874 小杨的握手问题(真题) | https://www.luogu.com.cn/problem/B3874 | 普及− | 逆序对建模 |
专题十五:栈 · 队列 · 括号 ★★(客观题必考)
真题:无单独大题,但选择题/判断题高频
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P1739 表达式括号匹配 | https://www.luogu.com.cn/problem/P1739 | 入门 | 栈的经典应用 |
| 2 | P1241 括号序列 | https://www.luogu.com.cn/problem/P1241 | 普及− | 补全括号,栈 + 配对 |
| 3 | P1944 最长括号匹配 | https://www.luogu.com.cn/problem/P1944 | 普及/提高− | 栈 + DP 综合 |
| 4 | 洛谷有题(循环队列/栈客观题) | https://ti.luogu.com.cn/ | — | 队空/队满判定公式,必刷 |
必背公式:队空 front == rear;队满 (rear+1) % cap == front;入队 rear = (rear+1) % cap;出队 front = (front+1) % cap。
专题十六:环形 / 区间 DP ★★
真题:P11963 环线
| # | 题目 | 链接 | 难度 | 练什么 |
|---|---|---|---|---|
| 1 | P11963 环线(真题) | https://www.luogu.com.cn/problem/P11963 | 普及/提高− | 环形最大子段和,破环成链 |
| 2 | P1121 环状最大两段子段和 | https://www.luogu.com.cn/problem/P1121 | 普及+/提高 | 环形进阶(选做) |
| 3 | P1880 [NOI1995] 石子合并 | https://www.luogu.com.cn/problem/P1880 | 普及/提高− | 环形区间 DP,破环成链的经典 |
四、四周训练计划(每周 4~6 小时)
| 周次 | 主线 | 具体安排 | 验收 |
|---|---|---|---|
| 第 1 周 | 背包 + 前缀和 | 专题一(4 题)+ 专题二(4 题)+ 专题四(3 题) | 0/1 与完全背包能默写对比 |
| 第 2 周 | 二叉树 | 专题七(6 题)+ 专题八(2 题真题) | 三序递归 + 完全/满二叉树判定 |
| 第 3 周 | 树 DFS + 树形 DP | 专题九(前 4 题)+ 专题十(货物运输) | 邻接表 dfs(u,fa) 3 分钟默写 |
| 第 4 周 | 真题套卷 + 补缺 | 官方题单 #556 刷 6 套 + 客观题(洛谷有题)2 套 | 每套限时 2 小时,目标 60+ |
客观题不要放弃:50 分里选择题 30 + 判断题 20,用 https://ti.luogu.com.cn/ 专项练,性价比高于死磕难题。
每周至少留 30 分钟默写模板:把《备考模板手册》里 T1-2、T1-3、T2-1、T2-4 四个模板各默写一遍,写到一次编译通过为止。
五、常见踩坑(刷题时对照)
- 答案超过 21 亿没用
long long(尤其平方类、路径类、哈夫曼) - 0/1 背包写成正序 / 完全背包写成逆序
- 树 DFS 忘记传
fa,或忘记sz[u] = 1 mid = (l + r) / 2在 l+r 超 21 亿时溢出vector::size()无符号,i < v.size() - 1在空容器下下溢- 二分答案的可行方向写反
- 输出了题目没要求的提示语、多余空格或空行(如
no solution大小写) - 只过样例,没试
n=1、全相同、递增/递减、负数、无解、最大范围
六、专题与模板手册对照
| 专题 | 模板手册编号 | 考频 |
|---|---|---|
| 专题一 0/1 背包 | T1-2 | ★★★★★ |
| 专题二 完全背包 | T1-3 | ★★★★★ |
| 专题三 线性 DP | T1-4 | ★★★★ |
| 专题四 前缀和差分 | T1-5 | ★★★★ |
| 专题五 计数 DP | T1-7 | ★★★ |
| 专题六 字符串 DP | T1-6 | ★★★ |
| 专题七 二叉树遍历 | T2-2 / T2-3 | ★★★★★ |
| 专题八 特殊树判定 | T2-4 | ★★★★ |
| 专题九 树形 DP | T2-1 / T1-9 | ★★★★★ |
| 专题十 树上路径 | T2-7 | ★★ |
| 专题十一 贪心哈夫曼 | G-1 | ★★★ |
| 专题十二 二分答案 | G-2 | ★★★ |
| 专题十三 数论筛 | G-3 | ★★ |
| 专题十四 逆序对 | G-4 | ★★ |
| 专题十五 栈队列 | G-5 / G-6 | ★★ |
| 专题十六 环形 DP | T1-8 | ★★ |
附录:五大高频专题 · 核心题明细表
下面把考频最高的五个专题共 16 道题逐条列出:题号、题目名称、考点、洛谷链接、难度、验收点。
建议按表格顺序从上往下刷,不要跳题——每个专题内部是按"模板 → 变体 → 真题"递进的。
专题一 0/1 背包 ★★★★★
| 序 | 题号 | 题目名称 | 考点 | 洛谷练习 | 难度 | 验收点 |
|---|---|---|---|---|---|---|
| 1 | P1048 | [NOIP 2005 普及组] 采药 | 0/1 背包模板、一维滚动数组 | https://www.luogu.com.cn/problem/P1048 | 普及− | 能解释"为什么 j 必须倒序" |
| 2 | P1049 | [NOIP 2001 普及组] 装箱问题 | 0/1 背包变体(体积=价值,求剩余最小) | https://www.luogu.com.cn/problem/P1049 | 普及− | 答案 = m - dp[m],不是 dp[m] |
| 3 | P1060 | [NOIP 2006 普及组] 开心的金明 | 0/1 背包变体(价值 = 价格 × 重要度) | https://www.luogu.com.cn/problem/P1060 | 普及− | 会自己构造"价值函数" |
| 4 | P1164 | 小 A 点菜 | 0/1 背包求方案数(max 改 sum,恰好花完) | https://www.luogu.com.cn/problem/P1164 | 普及− | dp[0]=1;恰好装满 vs 不超过的区别 |
对应真题:B3873 小杨买饮料(2023.09)、P14920 道具商店(2025.12)
对应模板:T1-2
专题二 完全背包 ★★★★★
| 序 | 题号 | 题目名称 | 考点 | 洛谷练习 | 难度 | 验收点 |
|---|---|---|---|---|---|---|
| 1 | P1616 | 疯狂的采药 | 完全背包模板(每种无限取,正序遍历) | https://www.luogu.com.cn/problem/P1616 | 普及− | 与 P1048 并排写,只差一个循环方向 |
| 2 | P1679 | 神奇的四次方数 | 完全背包求最小值(最少个数) | https://www.luogu.com.cn/problem/P1679 | 普及− | dp[0]=0,其余 INF;正序遍历 |
| 3 | P17012 | [GESP202606 六级] 条形蛋糕 | 切割问题建模(长度=物品,可重复) | https://www.luogu.com.cn/problem/P17012 | 普及− | 会把"切蛋糕"翻译成"完全背包" |
| 4 | P11246 | [GESP202409 六级] 小杨和整数拆分 | 完全平方数当"物品",价值=1 | https://www.luogu.com.cn/problem/P11246 | 普及− | 真题,最接近六级题 1 风格 |
对应模板:T1-3
过关标志:把 P1048 与 P1616 的代码抄在同一张纸上,用红笔圈出唯一的差异。
专题三 二叉树遍历 ★★★★★
| 序 | 题号 | 题目名称 | 考点 | 洛谷练习 | 难度 | 验收点 |
|---|---|---|---|---|---|---|
| 1 | P1305 | 新二叉树 | 建树 + 先序遍历(字符节点) | https://www.luogu.com.cn/problem/P1305 | 入门 | 空节点用 *;根是第一个读入的节点 |
| 2 | P4913 | 【深基16.例3】二叉树深度 | 递归求深度 / BFS 求深度 | https://www.luogu.com.cn/problem/P4913 | 普及− | n 可达 10⁶,递归写法要能一次过 |
| 3 | P1030 | [NOIP 2001 普及组] 求先序排列 | 中序 + 后序 ⇒ 先序,递归分治 | https://www.luogu.com.cn/problem/P1030 | 普及− | 后序最后一位是根;区间划分边界 |
| 4 | P1827 | [USACO3.4] 美国血统 American Heritage | 中序 + 先序 ⇒ 后序(与上题对偶) | https://www.luogu.com.cn/problem/P1827 | 普及− | 先序第一位是根;能独立写出两题 |
对应真题:P10722 二叉树(2024.06)、P11375 树上游走(2024.12)
对应模板:T2-2 / T2-3
口诀:先序「根左右」、中序「左根右」、后序「左右根」。第一个访问根节点的是先序遍历。
专题四 树 DFS / 树形 DP ★★★★★
| 序 | 题号 | 题目名称 | 考点 | 洛谷练习 | 难度 | 验收点 |
|---|---|---|---|---|---|---|
| 1 | P17458 | [GESP202609 六级] 分树规划 | 邻接表 DFS + 子树大小 + 枚举删边 | https://www.luogu.com.cn/problem/P17458 | 普及/提高− | 答案 = `min |
| 2 | P1122 | 最大子树和 | 树形 DP 入门:f[u] += max(f[v], 0) |
https://www.luogu.com.cn/problem/P1122 | 普及 | 自底向上合并"正贡献"的思维 |
| 3 | P1364 | 医院设置 | 树的带权重心(枚举根 + 距离和) | https://www.luogu.com.cn/problem/P1364 | 普及 | 换根 DP 的雏形 |
| 4 | P2015 | 二叉苹果树 | 树形背包(分组背包合并子树) | https://www.luogu.com.cn/problem/P2015 | 普及+/提高− | dp[u][j] 第二维是"保留边数",注意 j-k-1 |
对应真题:P14919 路径覆盖(2025.12)、P10109 工作沟通(2023.12)、P14076 货物运输(2025.09)
对应模板:T2-1 / T1-9
地基(必背,所有树题的起手式):
void dfs(int u, int fa) {
sz[u] = 1; // 别忘了先置 1
for (int v : g[u]) {
if (v == fa) continue; // 无根树必须跳过父亲,否则死循环
dfs(v, u);
sz[u] += sz[v];
}
}
专题五 完全 / 满二叉树判定 ★★★★(最新命题趋势)
| 序 | 题号 | 题目名称 | 考点 | 洛谷练习 | 难度 | 验收点 |
|---|---|---|---|---|---|---|
| 1 | P15801 | [GESP202603 六级] 完全二叉树 | 后序返回(高度, 节点数, 是否 CBT),统计子树个数 | https://www.luogu.com.cn/problem/P15801 | 普及/提高− | 退化成链时逐层 BFS 会退化到 O(n²) |
| 2 | P17013 | [GESP202606 六级] 满二叉树 | 满二叉树 ⟺ 节点数 = 2ʰ − 1,统计子树个数 | https://www.luogu.com.cn/problem/P17013 | 普及− | 1LL << h 防溢出;单个叶子算满二叉树 |
判定口诀
- 满二叉树:所有叶子深度相同、每个非叶都有两个孩子 ⟺ 节点数 = 2ʰ − 1
- 完全二叉树:按层序编号后下标恰好连续填满 1..n;等价判定是"BFS 中遇到第一个空缺后,后面不能再出现任何孩子"
对应模板:T2-4
命题趋势:2026.03 与 2026.06 连续两场考"特殊树性质判定",且都要求统计有多少棵子树满足条件——不是只判断整棵树。这是六级从"选择题判断"向"写代码统计"迁移的明确信号。
五大专题总表(一屏速览)
共 18 题(含 4 道真题)。若时间紧张,每个专题只做前 2 题 + 最后 1 道真题,共 12 题即可覆盖全部核心模型。
两个值得注意的点
1. P1030 和 P1827 是对偶的,必须连着做。 前者"中序+后序→先序",后者"中序+先序→后序"。学生只要把区间划分的四个下标推明白一次,另一道就能独立写出——这是六级客观题"根据两种遍历求第三种"的稳定考点。
2. 专题五的两道真题有个共同陷阱:都要求统计有多少棵子树满足条件,不是只判断整棵树。单节点也算满二叉树。这是 2026 年连续两场的新趋势,建议在课堂上专门强调一次。
时间紧时的最小集合:每个专题「前 2 题 + 最后 1 道真题」= 12 题,可覆盖全部核心模型。
根据GESP C++六级考纲和历年真题考点,我整理了洛谷上对应的专题题单和针对性练习题目。这些题单和题目与六级编程题的考查方向高度匹配。
📚 核心专题题单推荐
以下是洛谷官方或社区精选的题单,覆盖了六级编程题的主要算法领域:
| 专题方向 | 推荐题单 | 题单链接 | 核心价值 |
|---|---|---|---|
| 动态规划基础 | 新手动态规划合集 | https://www.luogu.com.cn/training/1060 | 适合DP入门,涵盖各种基础DP模型 |
| 背包问题 | 背包问题(简单) | https://www.luogu.com.cn/training/8917 | 50道经典背包题,从0/1背包到完全背包,是六级高频考点 |
| 树形结构基础 | 【图论2-1】树 | https://www.luogu.com.cn/training/207 | 系统学习树的性质、遍历(DFS/BFS)和基本操作,对应六级编程题2 |
| 搜索算法 | 【算法1-7】搜索 | https://www.luogu.com.cn/training/112 | 官方题单,包含DFS和BFS的经典应用 |
| 树形DP | 树形动态规划 | https://www.luogu.com.cn/training/410624 | 针对树上DP问题的专项训练,对应六级进阶题型 |
| 区间DP | 区间DP | https://www.luogu.com.cn/training/69369 | 区间类动态规划的专项练习,是DP的重要分支 |
🎯 针对性练习题目链接
以下题目直接对应六级编程题的常见题型,建议优先练习:
动态规划类(编程题1方向)
- 台阶问题:P1192 台阶问题 - 与六级真题“青蛙跳台阶”高度相似,是线性DP的经典入门题
- 0/1背包:P1048 采药 - 最基础的0/1背包模板题,必须熟练掌握
- 完全背包:P1616 疯狂的采药 - 完全背包模板题,对应六级“整数拆分”类问题
- 子段和问题:P1115 最大子段和 - 线性DP基础,与六级“划分数组”类问题思路相通
树结构类(编程题2方向)
- 满二叉树判定:P17013 [GESP202606 六级] 满二叉树 - 六级真题,直接对应编程题2的考查形式
- 完全二叉树判定:P15801 [GESP202603 六级] 完全二叉树 - 六级真题,与上题互为补充
- 树的遍历:P1305 新二叉树 - 练习二叉树的前中后序遍历
- BFS层序遍历:P1443 马的遍历 - BFS模板题,对应六级“广度优先搜索”题型
💡 练习建议
- 先刷模板题:将上述背包问题、台阶问题等模板题练到能闭眼写出代码,确保基础分不丢。
- 精做真题:洛谷上有GESP历年真题(如P17013、P15801),务必在洛谷评测系统上亲自提交,适应其数据强度和调试方式。
- 专题突破:如果发现树形DP较弱,就集中刷“树形DP”题单的前几道题;如果背包不熟,就先把“背包问题(简单)”题单里的前20道做完。
- 注意区分“满二叉树”定义:在练习时留意,国内常将“所有叶子深度相同且除叶子外都有两个儿子”的树称为满二叉树(完美二叉树),而有的题解可能沿用国际定义(没有单孩子节点)。根据题目描述判断即可。
这些题单和题目基本覆盖了六级编程题的所有核心考点,建议按“动态规划 → 树结构 → 搜索”的顺序逐步攻克。

浙公网安备 33010602011771号