• [usaco]Programming Contest Problem Types


    Programming Contest Problem Types

    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

    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.

    Hal Burch通过在1999年春季的分析得出了这样的结论,竞赛的程序设计一般只有16种类型,它们分别是:

    动态规划

    贪婪法

    枚举搜索

    标号法(染色法)

    最短路径

    最小生成树

    背包问题

    计算机图形问题

    网络流

    欧拉回路

    二维凸包问题

    大数问题

    启发式搜索

    近似搜索

    其他题

    最困难的是在循环中嵌套以上算法或综合应用以上算法,甚至循环中嵌套以上算法的综合应用。即使你将概念了解的很清楚,做对这些问题也很难。

    你只需要完全张望仅仅以上16种类型的40%,你就有在IOI中夺银的实力。掌握80%你几乎可以确定将一块金牌收入囊中。当然,让你掌握这些算法不是我们的最终目的,我们会提供给你更多的练习充当你的磨刀石,磨厉你的竞赛技能。

  • 相关阅读:
    互斥锁的通俗理解
    U-Boot下分区信息查看
    《计算机组成原理》唐朔飞第二版_笔记
    《大话程序员》安晓辉_笔记
    C++ 类对象的初始化顺序
    FilterTerminal使用说明全总结
    sed -i 命令常用方法总结
    入园记录
    cookies,sessionStorage 和 localStorage区别
    优雅降级和渐进增强的理解:
  • 原文地址:https://www.cnblogs.com/nbalive2001/p/2194439.html
Copyright © 2020-2023  润新知