《深入浅出程序设计竞赛》(进阶篇)

syzhaoss 在 2026-03-24 创建  开放分组:全部用户  上次编辑时间:2026-06-19

第1部分 进阶技巧与思想

第 1 章 常见优化技巧

1.1 双指针法

A-B数对

逛画展

最大字段和

1.2 空间换时间

直播获奖

求和

玉蟾宫

1.3 单调栈

糟糕的一天

长方形

1.4 单调队列

滑动窗口

理想的正方形

1.4 课后习题与实验

唯一的雪花

稳赚不赔

钻石收藏家

插入排序

奶牛浴场

贴海报

滑动窗口

平衡的队列

切蛋糕

小琪的格子

第2章 前缀和、差分与离散化

2.1 前缀和与二维前缀和

求区间和

最大加权矩形

聪明的质监员

2.2 差分

语文成绩

地毯

2.3 离散化

火烧赤壁

程序自动分析

过度种植

2.4 课后习题与实验

领地选择

蛋糕切块

城际高铁

借教室

面向前方

增减序列

奶牛排队

天际线

混乱的排序

博弈游戏

第3章 分治与倍增

3.1 归并排序与快速幂

快速排序

逆序对

火柴排队

麦森数

3.2 其他序列上的分治

最大子段和

3.3 倍增与ST表

平衡的队列

喷泉

3.4 课后习题与实验

集合求和

平面上的最接近点对

地毯填补

奶牛集会

青蛙

分段

覆盖计划

忠诚数

三角形

活动

第4章 进阶搜索

4.1 状态剪枝

选数

吃奶酪

小木棍

4.2 迭代加深与双向搜索

埃及分数

数组方块

八数码难题

4.3 启发式搜索

机关

黑白棋子

4.4 课后习题与实验

靶形数独

Mayan游戏

宝藏

杂草的入侵

质数礼物

四子连棋

冰球比赛

学院迷宫

文化之旅

第2部分 进阶数据结构

第5章 二叉堆与树状数组

5.1 二叉堆的实现

快速排序

5.2 优先队列

合并果子

荷马史诗

蚯蚓

5.3 树状数组

树状数组1

树状数组2

逆序对

5.4 课后习题与练习

黑匣子

中位数

序列合并

建筑抢修

最小函数值

操作系统

火柴排队

配对统计

会场预约

削平

第6章 线段树

6.1 线段树的建立与操作

线段树1

6.2 线段树的应用

开关

无聊的数列

扶苏的问题

线段树2

小白逛公园

6.3 权值线段树(选读)

逆序对

6.4 课后习题与实验

忠诚数

方差

STEP

三元上升子序列

色板游戏

煮酒

游历

序列操作

Points

第7章 字符串

7.1 KMP算法

KMP字符串匹配

无线传输

7.2 字典树

密码

点名

最长异或路径

异或粽子

7.3 课后习题与实验

最长前缀

测试

单词的周期

动物园

会议座位

秘密信道

阅读理解

最大异或和

异或

普通平衡树

可乐

第8章 线段树的进阶用法

8.1 可持久化线段树

可持久化线段树

神秘数

8.2 树状数组套权值线段树

平衡树(树套树)

三维偏序(陌上花开)

8.3 课后习题与实验

序列

动态逆序对

美味菜品

人行步道

动态排名

任务查询系统

中值

混合果汁

路灯

第3部分 图论

第9章 树

9.1 树的性质与遍历

猫猫和企鹅

9.2 树的直径与重心

树网的核

会议

9.3 最近公共祖先

最近公共祖先

最大流量

9.4 树的重链剖分

重链剖分

最近公共祖先

种草

旅游

9.5 课后习题与练习

道路修建

树的重心

小猪爬树

核心城市

访问

联合权值

逃学的小孩

仓鼠找糖

运输计划

天天爱跑步

树上操作

QTree3

旅行

第10章 最短路

10.1 单源最短路

单源最短路

飞行路线

邮递员送信

10.2 负环与差分约束

负环

差分约束算法

10.3 次短路

路障

10.4 多源最短路与传递闭包

危险降临

传递闭包

10.5 课后习题与练习

最短路计数

买药水

通行费

最优贸易

小K的农场

糖果

传送门

电梯

灾后重建

产生数

奶牛比赛

社交网络

第11章 最小生成树

11.1 最小生成树及其应用

最小生成树

买礼物

构造树

11.2 次小生成树(选读)

严格次小生成树

11.3 课后习题与实验

营救

口袋的天空

灌溉

货车运输

逐个击破

电网

免费道路

能量树

第12章 连通性问题

12.1 无向图的边双连通性

12.2 无向图的点双连通性

12.3 有向图的强连通性

12.4 课后习题与实验

第4部分 动态规划

第13章 动态规划的引入

13.1 动态规划

纸币问题1

数字三角形

13.2 状态、转移与又向无环图

纸币问题2

纸币问题3

采药

挖地雷

13.3 拓扑排序与记忆化搜索

滑雪

食物链总数

13.4 动态规划的解法

最大子段和

整数划分

13.5 课后习题与实验

打怪、吃药、获得经验

过河卒

装箱问题

疯狂的采药

小A点菜

摆花

线段

金明的预算方案

小k考前临时抱佛脚

第14章 线性状态动态规划

14.1 单序列问题

导弹拦截

打鼹鼠

琪露诺

大师赛

快速求和

14.2 多序列问题

最长公共子序列

编辑距离

最长公共子序列

子串

14.3 高维问题

三倍经验

方格取数

14.4 课后习题与实验

合唱队形

花店橱窗

樱花

奶牛展览

乌龟棋

绝世好题

262144

第15章 区间与环形动态规划

15.1 区间动态规划

15.2 环形动态规划

15.3 课后习题与实验

第16章 树与图上的动态规划

16.1 树上动态规划

16.2 图上动态规划

16.3 课后习题与实验

第17章 状态压缩动态规划

17.1 状态压缩

17.2 状态压缩的一般技巧

17.3 状态压缩与其他算法的交叉应用

17.4 课后习题与实验

第18章 动态规划的设计与优化

18.1 设计动态规划

18.2 优化转移

18.3 课后习题与实验

第5部分 数学专题选讲

第19章 进阶数论 

19.1 模意义下的数和运算

19.2 乘法逆元

19.3 同余方程与中国剩余定理

19.4 线性筛与积性函数(选读) 

19.5 欧拉函数(选读) 

19.6 课后习题与实验

第20章 组合数学与计数

20.1 集合与容斥原理

20.2 常见的组合计数方法

20.3 二项式定理

20.4 卡塔兰数与斯特林数

20.5 课后习题与实验

第21章 概率与统计

21.1 事件

21.2 概率模型

21.3 数学期望

21.4 课后习题与实验

第22章 基础线性代数

22.1 向量与矩阵变换

22.2 高斯消元

22.3 课后习题与实验