USACO Training Chapter 4 ~ 6 Summary
Section 4.1
2010.08.26 TEXT Optimization Techniques
2010.10.19 PROB Beef McNuggets 多重背包+裴蜀定理
2011.08.07 PROB Fence Rails DFS+剪枝
2011.03.24 PROB Fence Loops DFS / 最小环(Floyd)
2011.08.10 PROB Cryptcowgraphy DFS+剪枝+字符串处理
Section 4.2
2011.08.10 TEXT "Network Flow" Algorithms
2011.03.19 PROB Drainage Ditches 最大流(Edmonds-Karp)
2011.03.19 PROB The Perfect Stall 最大流 / 二分图最大匹配(Hungary)
2011.08.10 PROB Job Processing 二分+贪心
2011.08.11 PROB Cowcycles DFS+剪枝
Section 4.3
2011.08.11 TEXT Big Numbers
2011.08.08 PROB Buy Low, Buy Lower DP+统计方案数+高精度
2011.08.12 PROB The Primes DFS+剪枝
2011.08.12 PROB Street Race DFS判断连通性
2011.08.11 PROB Letter Game 枚举+优化
Section 4.4
2011.08.13 PROB Shuttle Puzzle 数学 / BFS
2011.08.13 PROB Pollutant Control 最小割
2011.08.16 PROB Frame Up 拓扑排序
Section 5.1
2011.08.17 TEXT Convex Hulls
2011.08.17 PROB Fencing the Cows 凸包(Graham-Scan)
2011.08.16 PROB Starry Night Floodfill + 模拟
2011.08.13 PROB Musical Themes 二分 / DP
Section 5.2
2011.08.17 PROB Snail Trail DFS
2011.08.17 PROB Electric Fences 模拟退火 / 局部搜索 / 随机化搜索
2011.08.17 PROB Wisconsin Squares DFS
Section 5.3
2011.08.17 TEXT Heuristics & Approximate Searches
2011.08.18 PROB Milk Measuring DFS-ID + DP / DP
2011.08.18 PROB Window Area 矩形切割 + 模拟
2011.08.18 PROB Network of Schools 强连通分量(Tarjan)
2010.08.19 PROB Big Barn DP
Section 5.4
2011.08.18 PROB All Latin Squares DFS+剪枝 / DFS+置换群
2011.08.19 PROB Canada Tour DP / DP+刷表法
2011.08.20 PROB Character Recognition 统计 + DP
2011.08.19 PROB Betsy's Tour DFS+剪枝 / SCDP
2011.08.18 PROB TeleCowmunication 最小割
Section 5.5
2011.08.21 PROB Picture 离散化 + 扫描 / 线段树
2011.08.20 PROB Hidden Passwords 枚举+优化 / 最小后缀
2011.08.21 PROB Two Five Cantor展开 + DFS
Section 6.1
2011.08.21 PROB Postal Vans DP / SCDP
2011.08.21 PROB A Rectangular Barn DP(悬线法)
2011.08.21 PROB Cow XOR 枚举+优化
大致学习了这些东西:
1. DFS, 以及常见的优化技巧
2. 二分法转化为判定性问题
3. <string>的使用
4. 离散化思想
5. Tarjan算法(强连通分量)
6. 悬线法求最大子矩阵
7. Hungary算法(棋盘覆盖, 最小路径覆盖)
8. 拓扑排序的DFS实现
9. DP的刷表法实现(白书P172)
10. Edmonds-Karp算法
11. Graham-Scan算法求凸包, 水平线实现
个人以为对于NOIp来说, USACO Training Chapter4之后的内容的主要价值在于训练调试能力, DFS+剪枝的题目非常多, 对于训练暴搜来说是很好的教材. 算法上的话, Chapter4以后的NOIp新内容只有二分法和DFS优化技巧, 但是对于算法组合能力的要求有了进一步提升, 只有基础非常扎实才能在短时间内AC题目.
不过目前的调试能力仍然有限, 不太复杂的DFS可能需要30 ~ 50min, 较为复杂的DFS可能需要2~3h甚至更长的时间才能调试通过. 对于NOIp来说还是太长了, 简单DFS应该在20min内调试成功, 复杂一些也应该在1h内调试成功. 这方面还需要进一步训练.
这次写USACO Training跳过了4道题, 分别是1.4的某道矩形, 3.4.1的计算几何, 4.4.2和5.4.5的两道最小割. 如果日后打算参加GDKOI/GDOI的话, 再弥补网络流/SCDP/高级数据结构(Trie/线段树/SBT/树状数组)这方面的内容. Chapter5和Chapter6的几道题还是很难理解题解, 也没有掌握.
不管怎么说, 我比一年前还是强了很多.