前言:
这篇博客是一些杂题和对《挑战程序设计竞赛》的分章节总结。
文章目录
前序: 杂题收录
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
中位数图 | 脑洞 | ✦ ✧✧✧✧ | 略 |
第一章:蓄势待发——准备篇
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
三角形 | 爆搜 | ✦✧✧✧✧ | 戳这里 |
Ants | 脑洞 | ✦✦✧✧✧ | 戳这里 |
难度增加的抽签问题 | 二分 | ✦✦✧✧✧ | 戳这里 |
第二章:初出茅庐——初级篇
2.1 搜索
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
部分和问题 | DP/深搜 | ✦✦✧✧✧ | 戳这里 |
Lake Counting | 深搜 | ✦✧✧✧✧ | 戳这里 |
迷宫的最短路径 | 广搜 | ✦✧✧✧✧ | 戳这里 |
2.2 贪心
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
硬币问题 | 贪心/动态规划 | ✦✦✧✧✧ | 戳这里 |
区间调度问题 | 脑洞/贪心 | ✦✦✧✧✧ | 戳这里 |
字典序最小问题 | 贪心 | ✦✧✧✧✧ | 戳这里 |
Saruman’s Army | 贪心 | ✦✦✧✧✧ | 戳这里 |
Fence Repair | 哈夫曼树 | ✦✦✧✧✧ | 戳这里 |
2.3 动态规划
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
0-1背包 | 动态规划 | ✦✧✧✧✧ | 略 |
0-1背包 2 | 动态规划 | ✦✧✧✧✧ | 略 |
最长公共子序列 | 动态规划 | ✦✧✧✧✧ | 略 |
完全背包问题 | 动态规划 | ✦✧✧✧✧ | 略 |
多重部分和问题 | 动态规划 | ✦✦✧✧✧ | 略 |
最长上升子序列 | 动态规划 | ✦✧✧✧✧ | 略 |
划分数 | 脑洞/动态规划/组合数学 | ✦✦✦✧✧ | 戳这里 |
多重集组合数 | 脑洞/动态规划/组合数学 | ✦✦✦✧✧ | 戳这里 |
2.4 数据结构
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
Expedition | 脑洞/优先队列 | ✦✦✧✧✧ | 戳这里 |
set与map操作 | STL使用 | ✦✧✧✧✧ | 戳这里 |
A Bug’s Life | 并查集/二分图染色 | ✦✦✦✧✧ | 戳这里 |
食物链 | 并查集 | ✦✦✦✧✧ | 戳这里 |
2.5 图
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
次短路 | 迪杰斯特拉变种 | ✦✦✧✧✧ | 戳这里 |
Conscription | 最大生成森林/脑洞 | ✦✦✧✧✧ | 戳这里 |
Layout | 最短路/差分约束 | ✦✦✦✧✧ | 戳这里 |
2.6 数学问题
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
线段上格点的个数 | 最大公约数/抽象 | ✦✦✧✧✧ | 戳这里 |
双六 | 扩展欧几里的算法 | ✦✧✧✧✧ | 戳这里 |
青蛙的约会 | 扩展欧几里的算法求最小正整数解 | ✦✦✦✧✧ | 戳这里 |
C-loops | 扩展欧几里得算法求最小正整数解 | ✦✦✧✧✧ | 戳这里 |
区间内的素数个数 | 埃式筛法 | ✦✦✧✧✧ | 戳这里 |
MiniMum Scalar Product | 脑洞/数学 | ✦✦✧✧✧ | 戳这里 |
Crazy Rows | 贪心/技巧 | ✦✦✧✧✧ | 戳这里 |
Bribe the Prisoners | 动态规划 | ✦✦✦✧✧ | 戳这里 |
Millionaire | 概率/动态规划 | ✦✦✦✦✧ | 戳这里 |
第三章: 出类拔萃——中级篇
3.1 二分搜索
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
Cable master | 小数二分 | ✦✦✦✧✧ | 戳这里 |
Aggressive cows | 二分/STL | ✦✦✧✧✧ | 戳这里 |
最大化平均值 | 小数二分/脑洞 | ✦✦✦✧✧ | 戳这里 |
3.2 常用技巧
题目名称 | 题目标签 | 题目难度 | 解题报告 |
---|---|---|---|
Subsequence | 尺寸法 | ✦✦✦✧✧ | 戳这里 |
Jes’s Reading Problem | 尺寸法 | ✦✦✦✧✧ | 戳这里 |
Face The Right Way | 开关问题 | ✦✦✦✧✧ | 戳这里 |