编程竞赛

Awesome Competitive Programming Awesome

精选的“竞争规划”,“算法”和“数据结构”资源的精选列表.

下面的列表是为了将人们与信息联系起来而创建的,其中包含了我在11年竞争性编程生涯中收集的所有精彩资源的完整集合. 我希望你会发现它有用:)

What is competitive programming? - Quora

Contributing

请跟随 https://github.com/lnishan/awesome-competitive-programming/blob/master/CONTRIBUTING.md 开始.

您也可以通过分享做出贡献!
与同学,朋友和大家分享清单:)

>通过将更多人与信息联系起来,
>你,不是在做我,但每个人都非常青睐!

>我真的希望更多的人可以从这个列表中受益:)

List of Lists

>按主题分类的精彩策展列表.

名称 说明
★★★ Good Blog Post Resources about Algorithm and Data Structures - Codeforces Codeforces用户编写的精彩教程博客文章集. 一些有趣的包括回文树,基于策略的数据结构等等.
★★★ All of the good tutorials found on codeforces - Codeforces Codeforces用户编写的另一个很好的教程博客文章集.
★★★ Data Structures and Algorithms - CodeChef Discuss 一个非常完整的竞争性编程资源列表. 浏览器书签中的必备内容.
★★★ How to prepare for ACM - ICPC? - GeeksforGeeks 详细介绍了ACM-ICPC的准备工作.

Syllabuses

>找出您需要学习的主题.

名称 说明
★★★ IOI Syllabus 将对IOI参赛者进行测试的详细教学大纲. 这仍然与ACM-ICPC有些相关.
★★★ How to prepare for ACM - ICPC? - GeeksforGeeks 详细介绍了ACM-ICPC的准备工作.
★★☆ Programming Camp Syllabus 运动问题的竞争性编程中的重要主题列表.
★★☆ Juniors Training Sheet,通过 Mostafa Saad Ibrahim 为新手提供约800个有序问题,以达到Div2-D的优点

Tutorial Websites

>很棒的教程网站.

名称 说明
★★★ Topcoder Data Science Tutorials 受尊敬的Topcoder成员编写的教程列表. 许多顶级程序员从这里开始学习数据科学.
★★★ E-Maxx (Russian), (English) 在俄语竞争性编程社区中广泛使用和引用的教程网站. 原始网站的大多数文章已被翻译成英文,谷歌翻译对其余文章也可以.
★★☆ Algorithms - GeeksforGeeks 一个网站,上面有关于不同主题的精美文章的大型存档. 它是算法课程的一个很好的免费资源.
★★☆ PEGWiki 一个网站上有许多关于许多主题的深入的类似wiki的写作. 在我看来,这比维基百科上的要好得多.
★★☆ Notes - HackerEarth 一个很棒的众包教程平台. 还访问 Code Monk.
★★☆ USA Computing Olympiad (USACO) 在其网站上包含几个培训页面,旨在以一种自己的节奏发展一种编程解决方案的技能,以解决困难和变化的算法问题.
★★☆ basecs 一个博客,提供有关基本算法和数据结构的深入插图教程.
★★☆ Competitive Programming - Commonlounge 初学者和中级概念的简短视频教程. 从各种CP博客上提供的最佳教程中选择高级教程.
★☆☆ OLYMPIADS IN INFORMATICS 这是一本国际期刊,专注于为有才华的学生在教学和学习信息学领域工作的专业人士的研究和实践.
★☆☆ algolist (Russian) 一个致力于各种算法的俄罗斯网站. 本网站列出的一些主题似乎很有趣.
★★☆ 演算法筆記 (Algorithm Notes) (Chinese) 台湾竞争性编程社区中最受欢迎的教程网站之一. 本网站的维护者在研究算法方面付出了巨大努力.
★★☆ 国家集训队论文 1999-2015 (Papers from Chinese IOI training camps) (Chinese) 来自中国IOI训练营的论文. 有趣的是,人们可以告诉不同的地区强调不同的事物.
★★★ Mini-Editorials,通过 Mostafa Saad Ibrahim 学员 针对许多问题的迷你社论解决方案,包括UVA / SPOJ / IOI /奥林匹克问题

Open Courses

>考虑通过这些精彩课程开始您的竞争性编程之旅!

名称 说明
★★☆ Code Monk ,由HackerEarth 关于竞争性编程中基本主题的精彩分步教程.
★★★ Stanford CS 97SI: Introduction to Competitive Programming Contests 提供全面的演讲幻灯片和一系列运动问题.
★★☆ How to Win Coding Competitions: Secrets of Champions ITMO大学关于edX竞争性编码的课程
★★☆ Codechef's Indian Programming Camp 视频讲座来自 Codechef's Indian Programming Camp 2016 . 由Sergey Kulik,Kevin Charles Atienza和Anudeep Nekkanti等顶级竞争程序员提供的讲座. 主要通过将这些概念应用于实际的竞争性竞赛问题来专注于探索这些概念.
★★☆ Reykjavik T-414-ÁFLV: A Competitive Programming Course 一个很棒的课程 Bjarki Ágúst Guðmundsson (SuprDewd) . 这些讲座以精美的幻灯片和一系列难以练习的问题为特色.
★★☆ NCTU DCP4631: Problem Solving and Programming Techniques 一个关于基本主题的课程,包括好的演讲幻灯
★☆☆ Materials (English)Arabic Competitive Programming Youtube Channel 一些材料(幻灯片和源代码)涵盖Mostafa Saad Ibrahim的各种算法主题.

Open Courses for Algorithms and Data Structures

名称 说明
★★★ prakhar1989/awesome-courses#algorithms 由着名机构(麻省理工学院,斯坦福大学,加州大学伯克利分校等)提供的精彩开放课程清单.
★★★ MIT SMA 5503: Introduction to Algorithms 由Charles Leiserson教授(算法导论的共同作者之一)和Erik Demaine教授(在数据科学方面取得了显着突破的教授)讲授,该课程提供了很好的材料,并伴有直观和全面的分析.
★★☆ UIUC Algorithm Course 讲义,作业,考试和讨论问题涵盖广泛的算法主题

Books

>竞争性节目推荐书籍清单.

名称 说明
★★☆ Competitive Programming ,由史蒂文和菲利克斯哈利姆 本书包含一系列相关的数据结构,算法和编程技巧. 这是一本很受欢迎的书. ......第一版是免费 download (pdf).
★★☆ Programming Challenges: The Programming Contest Training Manual ,Steven Skiena和Miguel Revilla 本书包含100多个编程挑战,以及接近它们所需的理论和关键概念. 问题按主题组织,并由完整的教程材料补充.
★★☆ Competitive Programmer's Handbook ,作者:Antti Laaksonen 有抱负的IOI和ICPC参赛者的竞争性节目介绍. 免费 download (pdf).
★★☆ Computational Geometry: Algorithms and Applications ,由Mark de Berg,Otfried Cheong,Marc van Kreveld,Mark Overmars 这是一本精心编写的书,涵盖了广泛的计算几何问题.
★☆☆ The Hitchhiker’s Guide to the Programming Contests ,作者:Nite Nimajneb 这本书是免费 download (pdf) . 本书涵盖了与竞争性编程相关的各种主题.
★★★ プログラミングコンテストチャレンジブック (Japanese), by 秋叶拓哉, 岩田阳一, 北川宜稔 An absolutely phenomenal book. The contents, organized in a very coherent manner, are nothing short of amazing. ... 培养与锻炼程式设计的逻辑脑:世界级程式设计大赛的知识、心得与解题分享(Chinese Traditional)
★★☆ 算法竞赛入门经典 (Chinese), by 刘汝佳 The Art of Algorithms and Programming Contests (English), 打下好基础:程式设计与演算法竞赛入门经典(Chinese Traditional)
★★☆ 算法竞赛入门经典——训练指南 (Chinese), by 刘汝佳, 陈锋 提升程式设计的解题思考力─国际演算法程式设计竞赛训练指南(Chinese Traditional)
★★★ 算法艺术与信息学竞赛 (Chinese) ,由刘汝佳,黄亮 古老的经典. 它已经过时了,但按照今天的标准,本书中的内容仍然被认为是非常困难的.

Books for Algorithms

名称 说明
★★★ Introduction to Algorithms ,Thomas H. Cormen,Charles E. Leiserson,Ronald L. Rivest和Clifford Stein 这本书也被称为CLRS(取自名称缩写),通常被称为算法和数据结构的“圣经”. 它是大学算法课程中最受欢迎的教科书之一. 本书非常详细地介绍了各种算法和数据结构. 写作更严谨,对某些人来说可能很难.
★★☆ Algorithm Design ,Jon Kleinberg和ÉvaTardos 本书围绕设计算法的技术展开. 它组织良好,用清晰易懂的语言书写. 每章都有实用的例子和有用的练习. 关于网络流的章节受到了很多人的高度赞扬. ...教科书附带的演讲幻灯片可以在其上找到 official website.
★★☆ The Algorithm Design Manual ,作者:Steven S. Skiena 这本书是用更易读的文字写成的. 有些人认为它比其他书籍更全面. 您还可以在其上找到一些好的资源(包括作者自己的视频讲座) official website.
★★★ Algorithms ,Robert Sedgewick和Kevin Wayne 这本书被整齐地分类,加上精心设计的解释和精彩的插图. 它在一些IOI训练营中用作教科书.

Books for Mathematics

名称 说明
★★☆ Discrete Mathematics and Its Applications ,作者:Kenneth H. Rosen 离散数学与竞争性编程密切相关. 本书提供了有关广泛主题的综合材料,包括:逻辑和证明,集合,函数,序列,矩阵,数论,递归,计数,Probablity,图形,树和布尔阿莱格拉,仅举几例.
★★☆ Concrete Mathematics: A Foundation for Computer Science ,由Ronald L. Graham,Donald E. Knuth,Oren Patashnik 这本书提供了对离散数学的更深入的了解,更多地侧重于与数字相关的主题.
★★☆ Linear Algebra and Its Applications ,David C. Lay,Steven R. Lay,Judi J. McDonald 这本书在弥合物理系统(科学家和工程师)和抽象系统(数学家)之间的差距方面做得非常出色.
★★☆ Introduction to Probability ,Charles M. Grinstead,J.Laurie Snell 这是一本写得很好的入门概率书. ......这是免费 download (pdf) (根据GNU自由文档许可证发布).
★★☆ How to Solve It: A New Aspect of Mathematical Method ,由G. Polya 古老的经典. 在本书中,作者提供了一种创造性地解决问题的系统方法.
★★☆ Intermediate Counting & Probability ,大卫帕特里克 计算和概率论者的主题美国数学奥林匹克冠军大卫帕特里克,主题包括包含 - 排除,1-1对应,鸽子原则,建设性期望,斐波纳契数和加泰罗尼亚数,递归,条件概率,生成函数,图论等等..

Sites for Practice

>良好的在线评判系统/比赛平台实践.

名称 说明
★★★ Codeforces Codeforces是最受欢迎的竞赛平台之一,如果没有的话. 目前由萨拉托夫州立大学维护,它定期举行比赛和无数令人敬畏的原始问题. 此外,每个比赛都提供由作者自己编写的即时有用的教程(通常). Codeforces还拥有一个强大而富有吸引力的社区. 总而言之,人们确实会在这里学到很多东西.
★★★ Topcoder Topcoder自2001年开始出现.历史悠久,在技术竞赛方面,它被认为是最负盛名的组织之一. 数以百计的SRM产生了丰富的问题​​. 这里的问题通常比其他问题更具挑战性,因此Topcoder吸引了许多精英程序员. 年度Topcoder Open(TCO)也是一个广泛讨论的事件.
★★★ Google Code Jam Google Code Jam肯定是最受尊敬的编程竞赛之一. 竞争包括独特的编程挑战,必须在固定的时间内解决. 竞争对手可以使用任何编程语言和开发环境来获得他们的解决方案.
★★★ AtCoder AtCoder是一个新的但非凡的竞赛平台,由一群评价很高的日本竞争程序员创建.
★★☆ CodeChef CodeChef是Directi的非营利性教育计划. 它是一个全球竞争性的编程平台,拥有庞大的程序员社区,可以帮助学生和专业人员测试和提高他们的编码技能. 其目标是为学生和专业软件开发人员提供实践,竞争和改进的平台. 除此之外,它的目的是在年轻时接触学生,并在印度灌输编程文化.
★★★ SPOJ SPOJ平台以在线评判系统为中心. 它由问题制定者社区准备或从之前的编程竞赛中获取的问题数量惊人,其中一些是实践中的重大问题(参见 Problem classifiers 部分). SPOJ还允许高级用户根据自己的规则组织竞赛.
★★☆ Timus Timus Online Judge is the largest Russian archive of programming problems with automatic judging system. Problems are mostly collected from contests held at the Ural Federal University, Ural Championships, Ural ACM ICPC Subregional Contests, and Petrozavodsk Training Camps.
★☆☆ HDU HDU是由杭州电子科技大学维护的在线评委. 它是中国IOI场景中许多经典问题的发源地.
★★☆ Aizu Online Judge 会津在线评委是由会津大学主办的比赛平台和问题档案. 它在日本的编程比赛中有很多很大的问题.
★★☆ UVa 一个历史悠久的老派问题档案/在线评判. 这里有数千个问题,包括许多经典问题. 但是,强烈建议您练习 uHunt 遵循其“竞争性编程练习”部分.
★★☆ HackerRank HackerRank是一家专注于消费者和企业竞争性编程挑战的公司. HackerRank的编程挑战可以通过各种编程语言解决,并跨越多个计算机科学领域.
★★☆ POJ POJ是北京大学维护的许多重大问题的在线评委. 大多数中国竞争程序员开始他们的旅程. 该平台确实过时,因此可能会出现神秘的编译和运行时问题.
★★☆ Project Euler Euler项目具有一系列令人惊叹的良好数学问题. 它还举办一个人们可以讨论的论坛.
★☆☆ Hackerearth HackerEarth是一家位于印度班加罗尔的创业技术公司,提供招聘解决方案.
★☆☆ Caribbean Online Judge COJ由位于古巴的信息科学大学(UCI,缩写为西班牙语)主持. 功能ACM ICPC和Progresive constest风格,主要来自加勒比海和拉丁美洲的问题制定者,也有问题分类器和比赛日历.
★★☆ CS Academy 在竞争激烈的编程环境中,CS Academy是一位不断发展的在线评委,每两周举办一次比赛. 它支持实时聊天,交互式课程和集成的在线编辑器(实际上有效).
★★☆ Russian Code Cup 由Mail.Ru Group提供的编程竞赛. 比赛包括3个资格,1个淘汰和1个最后一轮. 对于每一轮参赛者,给出4-8个问题,必须在固定的时间内解决.
★★☆ CodeFights CodeFights是一个竞争性编程实践和面试准备的网站. 它具有各种难度的日常挑战,问题存档和定期(每15分钟)迷你锦标赛. 适合初学者.

Problem Classifiers

>网站分类编程问题.
选择感兴趣的类别(例如DP)并练习该主题的问题.

名称 说明
★★★ A2 Online Judge 混合
★★★ Problem Classifier SPOJ
★★☆ UVa Online Judge CP Book
★☆☆ Codeforces Tags CF(DP)
★★☆ HackerRank HackerRank
★★☆ Juniors Training Sheet,通过 Mostafa Saad Ibrahim 为新手提供约800个有序问题,以达到Div2-D的优点
★★☆ Lucky貓的 UVA(ACM)園地 (Chinese) UVa
★★☆ Topcoder problem archive 类别和复杂程度问题列表

Contest Calendars

>即将开始编程竞赛的日历.
(不要错过另一场比赛!)

名称 说明
★★★ Programming Contest Calendar - HackerRank 谷歌日历导出可用
★★☆ clist.by API可供使用
★★☆ Coding Calendar (Android App)
★★☆ Coder's Calendar: Android App, Chrome Extension, Firefox Add-on
★★★ CodeHorizon: iOS App, Android App

Sites for Questions

>这些是提问的好网站.
将代码粘贴到 ideone, pastebin 或其他网站,以避免格式化问题.

名称 说明
★★★ Codeforces 对于快速解答,Codeforces肯定是询问与竞争相关的任何事情的首选.
★★★ Competitive Programming - Quora 您通常会在Quora上获得更详细的答案,但您可能不会立即回答您的问题.
★★☆ Theoretical Computer Science Stack Exchange 这个地方一般是为了学者,所以不要在这里询问有关比赛问题的问题.

Camps and Trainings

>在线培训和营地.

名称 说明
★★★ Online Free Problem-Solving Coaching,通过 Mostafa Saad Ibrahim 查看教练详细信息和人们对其性质/质量的评论

Implementations

>算法和数据结构实现.

名称 说明
★★★ CodeLibrary ,作者:Andrey Naumenko(indy256) CodeLibrary包含大量Java和C ++中的算法和数据结构的实现. 你也可以访问他 GitHub Repository.
★★★ spaghetti-source/algorithm ,由Takanori MAEHARA(@tmaehara) 许多硬算法和数据结构的高质量实现.
★★★ kth-competitive-programming/kactl ,Simon Lindholm(simonlindholm)等人. 来自KTH皇家理工学院的一个非常有组织,记录和测试的团队笔记本. 我见过的最精心制作的团队笔记本之一(比赛图书馆).
★★☆ jaehyunp/stanfordacm 斯坦福大学的团队笔记本维护良好,其中的代码质量很高.
★★☆ ngthanhtrung23/ACM_Notebook_new ,来自新加坡国立大学的RR Watameda(I_love_Hoang_Yen,flashmt,nguyenhungtam)团队 RR Watameda代表新加坡国立大学参加2016年ACM-ICPC世界总决赛. 这款笔记本中的物品非常标准且组织良好.
★★☆ bobogei81123/bcw_codebook ,来自国立台湾大学的团队bcw0x1bd2(darkhh,bobogei81123,step5) bcw0x1bd2代表国立台湾大学参加2016年ACM-ICPC世界总决赛. 该笔记本包含高级数据结构和算法的强大实现.
★☆☆ foreverbell/acm-icpc-cheat-sheet ,由foreverbell(foreverbell) 具有一些先进数据结构和算法的笔记本,其中包括一些来自中国信息学界的数据.
★☆☆ igor's code archive ,作者:Igor Naverniouk(Abednego) Igor Naverniouk的好笔记本,目前是Google的软件工程师,也是Google Code Jam团队的一员.

Language Specifics

>语言和其他杂项知识.

C/C++

名称 说明
★★☆ Power up C++ with the Standard Template Library - Topcoder: Part 1, Part 2 关于基本C ++ STL的入门教程.
★★☆ Yet again on C++ input/output - Codeforces Learn more about C++ I/O optimizations.
★★☆ C++ Tricks - Codeforces ... What are some cool C++ tricks to use in a programming contest? - Quora 丰富的C ++技巧可用于竞争性编程. 请注意,应谨慎使用.
★★★ C++ STL: Policy based data structures - Codeforces: Part 1, Part 2 详细介绍GNU C ++中实现的额外数据结构. 可以找到官方文档 here.
★☆☆ C++11 FAQ (English, Chinese, Russian, Japanese, Korean) 由C ++的创建者Bjarne Stroustrup收集和编写的关于C ++ 11的常见问题解答列表.

Java

名称 说明
★★☆ How to read input in Java — tutorial - Codeforces 了解如何更快地阅读输入. 对于那些打算使用Java进行竞争性编程的人来说,这是必读
★★☆ How to sort arrays in Java and avoid TLE - Codeforces 关于如何避免遇到最严重的快速排序的一些提示
★★☆ BigNum arithmetic in Java — Let's outperform BigInteger! - Codeforces 一个基本但更快的自定义BigInteger类
★★☆ EZ Collections, EZ Life (new Java library for contests) - Codeforces 由Alexey Dergunov(dalex)撰写的竞赛Java库. 实现ArrayList,ArrayDeque,Heap,Sort,HashSet,HashMap,TreeSet,TreeMap,TreeList和pair类

Miscellaneous

名称 说明
★★★ Bit Twiddling Hacks 一个巨大的编译列表的位操作技巧.
★★★ Comparing Floating Point Numbers, 2012 Edition - Random ASCII 关于浮点数的所有知识. 必须特别阅读几何主题.
★★☆ Object-Oriented C Style Languages: C++, Objective-C, Java, C# - a side-by-side reference sheet 常见语法的详细并排参考表.

Tools

>令人敬畏的工具,让您的生活更轻松.

IDEs

名称 平台 说明
★★★ Vim CLI /跨平台 Vim是高级程序员中最受欢迎的文本编辑器之一. 它只需按键即可高效地完成文本编辑. Vim也是高度可配置的,可扩展的,并且很好地与shell(命令行)集成. 关于Vim的唯一挫折是它对初学者有很高的学习曲线.
★★★ Emacs CLI /跨平台 Emacs是另一种流行的文本编辑器(或更精确的开发环境). 关于“Vim vs. Emacs”的辩论由于受欢迎而不断提出. 基本上Emacs不仅仅是一个文本编辑器. 它具有文件管理器,Web浏览器,邮件客户端和新闻客户端等插件,允许用户直接在Emacs中执行这些任务. 因此,Emacs“更重”,但它可以说对初学者来说相对容易学习.
★★★ Far Manager 混合/ Windows 远程管理器是RU / CIS竞争性编程社区中使用最广泛的编辑器. 它实际上是一个文件管理器,但你可以安装 FarColorer - 一个语法高亮显示插件来编程. 经过适当配置,远程管理器允许您在编写代码时非常有效地在文件之间导航.
★★★ Code::Blocks GUI /跨平台 Code :: Blocks是C / C ++的首选IDE. 它是一款功能齐全的多功能IDE,具有众多强大功能. Code :: Blocks通常与编程竞赛中的Vim一起提供.
★★★ IntelliJ IDEA GUI /跨平台 IntelliJ IDEA无疑是Java最好的IDE之一. 它被大多数使用Java作为主要语言的竞争程序员使用. 一定要看看 CHelper ,一个非常方便的插件,用于编程竞赛.
★★☆ Sublime Text GUI /跨平台 Sublime Text是一个非凡的文本编辑器. 它拥有强大而创新的功能,如Multiple Carets,Minimaps和Command Palletes,它吸引了一个强大且引人入胜的社区. Sublime Text是高度可扩展的,所以一定要有 Package Control 安装和探索可能是最大的插件目录之一!
★★☆ Eclipse GUI /跨平台 Eclipse是另一个很好的Java IDE. 它可以替代Intellij IDEA(按照今天的标准,它比IDEA更差). 有时竞赛仅出于某种原因提供Eclipse,因此这可能是尝试使用Eclipse的良好动机.
★★☆ CLion GUI /跨平台 由JetBrains制作的CLion - 制作Intellij IDEA的同一家公司,是一个功能强大的C ++ IDE. 提供免费教育许可证,或者您可以试用他们 EAP (Early Access Program) 截止到2018年4月仍然是免费的.您可能希望关闭其代码检查功能,因为它会导致相当多的延迟.
★☆☆ 其他IDE 混合 Visual Studio is the IDE to use in case you want to code in C#. ... Both AtomVisual Studio Code are built with Electron (written in JavaScript) 和 therefore somewhat resource-hogging. ... CodeLite is a newly rising IDE. Beware that the load-up 和 project-creation times can be extraordinary.

Personal use

名称 说明
★★★ VisuAlgo 一个网站,提供大量可视化工具,用于算法和数据结构.
★★★ 全科医生帮助:...... CHelper (IntelliJ IDEA)(manual) ... caide (Visual Studio,CodeLite,独立命令行应用程序).​​.. JHelper (AppCode,CLion) online-judge-tools (独立的CLI工具,它是积极维护的.) 解决竞争,内联库代码和提供测试框架的出色工具. 它们可以帮助您节省宝贵的时间来切换窗口和来回复制粘贴.
★★☆ Codeforces Parsers:...... Codeforces Parser ... GoCF ... cfparser (emacs的) cfparser (cli) 这些工具解析Codeforces竞赛问题并帮助运行示例测试.
★★★ The On-Line Encyclopedia of Integer Sequences (OEIS) 一个惊人的百科全书,包含无数整数序列的数据库. 它还具有强大的搜索引擎. 有时,看似困难的组合学问题可能等同于简单或研究的整数序列.
★★☆ 语法荧光笔:... tohtml.com ... markup.su ... hilite.me 使用漂亮的格式化代码片段创建幻灯片或团队笔记本非常方便. 只需复制突出显示的代码片段并将其粘贴到您最喜欢的WYSIWYG(所见即所得)编辑器中!
★★☆ 代码共享: ... Ideone.com ... Pastebin.com ... Ubuntu Pastebin 这些工具生成用于代码共享的半永久页面. 非常有用,尤其是当您试图让其他人查看您的代码时.
★★☆ Ineffable 一个简单的命令行分级器,用于本地分级.
★★☆ uDebug 一个平台,为UVa Online Judge上的问题提供用户指定输入的预期输出. 一些问题还为调试提供了额外的测试用例.

Contest Preparation

名称 说明
★★★ polygon polygon为专业比赛准备提供了一个平台和丰富的工具. ... 一个例子: Validators with testlib.h - Codeforces
★★☆ Graph Editor 一种创造和可视化图形的幻想工具.
★★☆ tcframe 用于生成竞争性编程问题的测试用例的C ++框架.
★★★ Virtual Judge (vjudge) Virtual Judge(vjudge)允许用户使用显着的问题档案创建虚拟竞赛.
★★☆ BNU Online Judge BNU Online Judge还允许用户创建虚拟竞赛.
★★☆ Kattis Kattis协助准备比赛(通过电子邮件发送给他们寻求帮助).

Community

>认识像神一样的竞争程序员!
从这些人那里学习有用的提示,教程和见解:)

Blogs

名称(句柄) 博客名称
Codeforces blogs
Petr Mitrichev(Petr) Algorithms Weekly
Makoto Soejima(rng_58) rng_58's blog
Bruce Merry(bmerry) Entropy always increases
PrzemysławDębiak(Psyho) Psyho's blog
Anudeep Nekkanti(anudeep2011) Namespace Anudeep ;)
vexorian(vexorian) vexorian's blog
Ashar Fuadi(fushar) Fushar's blog
LiJie Chen (WJMZBMR) WJMZBMR (Chinese)
黄一文(梦幻) 小月的耍廢日誌 (Chinese)
杨向云(morris1028) Morris' Blog (Chinese)
Yuhao Du (TooDifficuIt, TooSimple, xudyh) xudyh (Chinese)

Youtube and Livestreams

名称(句柄) 链接
Petr Mitrichev(Petr) Youtube
Ravindrababu Ravula by Gate Lectures Youtube
Mostafa Saad Ibrahim(mostafa.saad.fci) Competitive Programming Youtube (Arabic Speech-English Text)
Tushar Roy Youtube ,有很多教程视频.
GeeksforGeeks Youtube
算法直播! Youtube
CodeChef Youtube
HackerRank Youtube
IDeserve Youtube
code_report Youtube ,有HackerRank,LeetCode,Topcoder和Codeforces的比赛更新和问题教程.
“Sothe”算法Wolf Youtube
Egor Kulikov(叶戈尔) Youtube
Adam Bardashevich(订阅者) Youtube
Bohdan Pryshchenko(I_love_Tanya_Romanova) Twitch, Youtube
Vladimir Smykalov(单位1.10) Twitch, Youtube
Alexander Abbas(Alex7) Youtube
Mikhail Tikhomirov(Endagorion) Youtube

Quora

>参观 Competitive Programming - Quora (Top 10 Most Viewed Writers).

重要社区人物 说明
Bill Poucher 执行董事 ACM-ICPC . 贝勒大学CS教授.
Michal Forišek (misof) 组织者 IPSCIOI. CS Teacher at Comenius University in Slovakia. Algorithm 和 CS Education Researcher. Former highly-rated competitive programmer.
Ahmed Aly (ahmed_aly) 创始人 A2OJ. HackerRank 首席软件工程师. 前成员 Google Code Jam team.
竞争程序员
Thanh Trung Nguyen (I_love_Hoang_Yen) Brian Bi (bbi5291) Jonathan Paulson (jonathanpaulson)
Miguel Oliveira (mogers) Egor Suvorov (yeputons) Michal Danilák (Mimino)
Bohdan Pryshchenko (I_love_Tanya_Romanova) Vladimir Novakovski (vnovakovski) Nick Wu (xiaowuc1)
Cosmin Negruseri Lalit Kundu (darkshadows) Ashish Kedia (ashish1294)
Johnny Ho (random.johnnyh) Joshua Pan (lonerz) Anudeep Nekkanti (anudeep2011)
Steven Hao (stevenkplus) Raziman T.V. (razimantv)

Other Awesome Resources

Articles

>信息丰富且有用的文章

主题
Overview of Programming Contests,由PrzemysławDębiak(Psyho)
The 'science' of training in competitive programming - Codeforces,作者:Thanh Trung Nguyen(I_love_Hoang_Yen)
If you ask me how to improve your algorithm competition skill, I will give you the link of this blog. - Codeforces,由黄一文(梦幻)
How to prepare for ACM - ICPC? - GeeksforGeeks,由Vishwesh Shrimali
Complete reference to competitive programming - HackerEarth,作者:Ravi Ojha
Getting started with the sport of competitive programming - HackerEarth,由Triveni Mahatha

FAQs

>常见问题的精美答案

问题
How do I start competitive programming? - Quora
How can I become good at competitive programming? - Quora ... What is the best strategy to improve my skills in competitive programming in 2-3 months? - Quora ... What is a good 6 month plan to start and progress through competitive programming? - Quora
How is competitive programming different from real-life programming? - Quora
What have you gained from competitive programming? - Quora

Awesome Lists

>相关的精彩列表

名称 链接
C ++ Books The Definitive C++ Book Guide and List - Stack Overflow
Java Books What are the best books to learn Java? - Quora
高级Java书籍 What is the best book for advanced Java programming? - Quora
算法 tayllan/awesome-algorithms
算法可视化 enjalot/algovis
数学 rossant/awesome-math
C ++ fffaraz/awesome-cpp
Java akullpp/awesome-java
课程 prakhar1989/awesome-courses
免费编程书籍 vhf/free-programming-books
社区策划的C ++资源 Hackr.io

Interview Questions

名称 说明
CareerCup 最受欢迎的软件工程面试准备网站.
InterviewBit 具有引人入胜的游戏设计,旨在唤起人们对练习的兴趣.
Awesome Interviews 精彩的面试问题列表

License

Creative Commons Attribution 4.0 International

令人敬畏的竞争性编程是根据a Creative Commons Attribution 4.0 International License.