这篇TEXT主要讲述的是在编程比赛中常见的题目类型,
Hal Burch conducted an analysis over spring break of 1999 and made an amazing discovery: there are only 16 types of programming contest problems! Furthermore, the top several comprise almost 80% of the problems seen at the IOI. Here they are:
Dynamic Programming
Greedy
Complete Search
Flood Fill
Shortest Path
Recursive Search Techniques
Minimum Spanning Tree
Knapsack
Computational Geometry
Network Flow
Eulerian Path
Two-Dimensional Convex Hull
BigNums
Heuristic Search
Approximate Search
Ad Hoc Problems
Hal Burch 曾经做过一个分析,得到一个有趣的发现:总共只有16种编程比赛题型,分别是:
动态规划问题贪心算法
穷举搜索
Flood Fill(不是很了解)
最短路径
递归搜索技巧
最小生成树
背包
计算几何
网络流
欧拉路径
二维凸包
大数问题
启发式搜索
近似搜索
特定问题
The most challenging problems are Combination Problems which involve a loop (combinations, subsets, etc.) around one of the above algorithms - or even a loop of one algorithm with another inside it. These seem extraordinarily tricky to get right, even though conceptually they are ``obvious''.
最具挑战的问题就是这些问题的组合,它们可能很棘手,即使从概念上看它们是显而易见的.
If you can master solving just 40% of these problem types, you can almost guarantee a silver medal at the IOI. Mastering 80% moves you into the gold range almost for sure. Of course, `mastery' is a tough nut to crack! We'll be supplying a plethora of problems so that you can hone your skills in the quest for international fame.
如果你能掌握以上问题的40%,你几乎可以保证在国际信息学奥林匹克上获的银牌,掌握80%的话,金牌也基本上就是你的了。“掌握”不是轻而易举就能做到的,USACO将会提供大量的题目来磨炼你的技能,让你在国际上小有名声。