Update render script and Makefile

This commit is contained in:
Jonas Zeunert
2024-04-22 21:54:39 +02:00
parent 2d63fe63cd
commit 4d0cd768f7
10975 changed files with 47095 additions and 4031084 deletions

View File

@@ -1,9 +1,9 @@
 Awesome Competitive Programming !Awesome (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) (https://github.com/sindresorhus/awesome)
 Awesome Competitive Programming !Awesome (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) (https://github.com/sindresorhus/awesome)
A curated list of awesome Competitive Programming, Algorithm and Data Structure resources.
Created with a view to connecting people to information, this list below contains a complete collection of all the fantastic resources I've collected over the course of my 11-year competitive programming career.
I hope you'll find it useful :)
Created with a view to connecting people to information, this list below contains a complete collection of all the fantastic resources I've collected over the course of my 11-year competitive
programming career. I hope you'll find it useful :)
What is competitive programming? - Quora (https://www.quora.com/What-is-competitive-programming-2)
@@ -49,229 +49,261 @@
List of Lists
▐ Awesome curated lists classified by topics.
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Good Blog Post Resources about Algorithm and Data Structures - Codeforces │A collection of fantastic tutorial blog posts written by Codeforces users. Some intriguing ones include  │
│ │ (http://codeforces.com/blog/entry/13529) │Palindromic Trees, Policy Based Data Structures, and a lot more. │
│★★★│All of the good tutorials found on codeforces - Codeforces (http://codeforces.com/blog/entry/57282)│Another good collection of tutorial blog posts written by Codeforces users. │
│★★★│Data Structures and Algorithms - CodeChef Discuss  │A very complete list of competitive programming resources. A must-have in your browser bookmark. │
│ │(https://www.quora.com/What-is-a-list-of-data-structures-that-a-competitive-programmer-must-know/an│ │
│ │swer/Sameer-Gulati-3) │ │
│★★★│How to prepare for ACM - ICPC? - GeeksforGeeks │A detailed walk-through of the preparations for ACM-ICPC. │
│ │ (https://www.geeksforgeeks.org/how-to-prepare-for-acm-icpc/) │ │
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Good Blog Post Resources about Algorithm and Data Structures - Codeforces │A collection of fantastic tutorial blog posts written by Codeforces users. Some  │
│ │ (http://codeforces.com/blog/entry/13529) │intriguing ones include Palindromic Trees, Policy Based Data Structures, and a lot  │
│ │ │more. │
│★★★│All of the good tutorials found on codeforces - Codeforces (http://codeforces.com/blog/entry/57282)│Another good collection of tutorial blog posts written by Codeforces users. │
│★★★│Data Structures and Algorithms - CodeChef Discuss  │A very complete list of competitive programming resources. A must-have in your  │
│ │(https://www.quora.com/What-is-a-list-of-data-structures-that-a-competitive-programmer-must-know/an│browser bookmark. │
│ │swer/Sameer-Gulati-3) │ │
│★★★│How to prepare for ACM - ICPC? - GeeksforGeeks │A detailed walk-through of the preparations for ACM-ICPC. │
│ │ (https://www.geeksforgeeks.org/how-to-prepare-for-acm-icpc/) │ │
Syllabuses
▐ Find out what topics you need to learn.
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│IOI Syllabus (https://people.ksp.sk/~misof/ioi-syllabus/) │A detailed syllabus on which IOI contestants will be tested. This is still somewhat relevant to ACM-ICPC.│
│★★★│How to prepare for ACM - ICPC? - GeeksforGeeks │A detailed walk-through of the preparations for ACM-ICPC. │
│ │ (https://www.geeksforgeeks.org/how-to-prepare-for-acm-icpc/) │ │
│★★☆│Programming Camp Syllabus │A list of important topics in competitive programming with exercise problems. │
│ │ (https://docs.google.com/document/d/1_dc3Ifg7Gg1LxhiqMMmE9UbTsXpdRiYh4pKILYG2eA4/edit) │ │
│★★☆│Juniors Training Sheet (https://goo.gl/unDETI), by Mostafa Saad Ibrahim  │~800 ordered problems for newcomers to be good up to Div2-D │
│ │(https://sites.google.com/site/mostafasibrahim/) │ │
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│IOI Syllabus (https://people.ksp.sk/~misof/ioi-syllabus/) │A detailed syllabus on which IOI contestants will be tested. This is still somewhat relevant to  │
│ │ │ACM-ICPC. │
│★★★│How to prepare for ACM - ICPC? - GeeksforGeeks │A detailed walk-through of the preparations for ACM-ICPC. │
│ │ (https://www.geeksforgeeks.org/how-to-prepare-for-acm-icpc/) │ │
│★★☆│Programming Camp Syllabus  │A list of important topics in competitive programming with exercise problems. │
│ │(https://docs.google.com/document/d/1_dc3Ifg7Gg1LxhiqMMmE9UbTsXpdRiYh4pKILYG2eA4│ │
│ │/edit) │ │
│★★☆│Juniors Training Sheet (https://goo.gl/unDETI), by Mostafa Saad Ibrahim  │~800 ordered problems for newcomers to be good up to Div2-D │
│ │(https://sites.google.com/site/mostafasibrahim/) │ │
Tutorial Websites
▐ Awesome websites with great tutorials.
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Topcoder Data Science Tutorials │A list of tutorials written by respected Topcoder members. Many top programmers started learning data sciences from here. │
│ │ (https://www.topcoder.com/community/data-science/data-science-tutorials/) │ │
│★★★│E-Maxx (Russian) (http://e-maxx.ru/algo/), (English)  │A tutorial website widely used and referenced in the Russian-speaking competitive programming community. Most of the articles  │
│ │(http://cp-algorithms.com/) │of the original site have been translated into English, Google Translate works okay for the remaining ones. │
│★★☆│Algorithms - GeeksforGeeks │A website with a large archive of nicely written articles on different topics. It is a great complimentary resource for  │
│ │ (https://www.geeksforgeeks.org/fundamentals-of-algorithms/) │algorithm courses. │
│★★☆│PEGWiki (http://wcipeg.com/wiki/Special:AllPages) │A website with amazing in-depth wiki-like writeups on many topics. It's far better than those on Wikipedia in my opinion. │
│★★☆│Notes - HackerEarth (https://www.hackerearth.com/practice/notes/trending/) │A great crowdsourcing platform for tutorials. Also visit Code Monk (https://www.hackerearth.com/practice/codemonk/). │
│★★☆│USA Computing Olympiad (USACO) (http://www.usaco.org/) │Contains several training pages on its website which are designed to develop one's skills in programming solutions to difficult│
│ │ │and varied algorithmic problems at one's own pace. │
│★★☆│basecs (https://medium.com/basecs) │A blog with in-depth, illustrated tutorials on basic algorithms and data structures. │
│★★☆│Competitive Programming - Commonlounge  │Short video tutorials for beginner and intermediate concepts. Advanced tutorials selected from the best ones available on  │
│ │(https://www.commonlounge.com/discussion/d4a14f601eb44281b6c579e73d126cca/mai│various CP blogs. │
│ │n?r=acp) │ │
│★│OLYMPIADS IN INFORMATICS │An international journal focused on the research and practice of professionals who are working in the field of teaching and  │
│ │ (https://www.mii.lt/olympiads_in_informatics/index.html) │learning informatics to talented student. │
│★☆☆│algolist (Russian) (http://algolist.manual.ru/) │A Russian website devoted to algorithms of all sorts. Some topics listed on this website seems pretty interesting. │
│★│演算法筆記 (Algorithm Notes) (Chinese) (http://web.ntnu.edu.tw/~algo/) │One of the most popular tutorial websites among the Taiwanese competitive programming community. The maintainer for this  │
│ │ │website spends immense efforts on researching algorithms. │
│★│国家集训队论文 1999-2015 (Papers from Chinese IOI training camps) (Chinese) │Papers from the Chinese IOI training camps. It's interesting for the fact that one can tell different regions emphasize  │
│ │ (http://download.csdn.net/album/detail/657/1/1) │different things. │
│★★│Mini-Editorials (https://github.com/mostafa-saad/MyCompetitiveProgramming),  │Solutions with mini-editorials for many problems, including UVA/SPOJ/IOI/Olympiad problems │
│ │by Mostafa Saad Ibrahim (https://sites.google.com/site/mostafasibrahim/)  │ │
│ │trainees │ │
│★★☆│OI Wiki (Competitive Programming) (Chinese) (https://oi-wiki.org/) │OI Wiki is committed to being a free and open continuously updated programming competition (competitive programming) knowledge │
│ │ │integration site. This wiki is a sort of companion or guide for the competitive programmer who's trying to learn something │
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Topcoder Data Science Tutorials │A list of tutorials written by respected Topcoder members. Many top programmers started learning data  │
│ │ (https://www.topcoder.com/community/data-science/data-science-tutorials/) │sciences from here. │
│★★★│E-Maxx (Russian) (http://e-maxx.ru/algo/), (English)  │A tutorial website widely used and referenced in the Russian-speaking competitive programming community.  │
│ │(http://cp-algorithms.com/) │Most of the articles of the original site have been translated into English, Google Translate works okay  │
│ │ │for the remaining ones. │
│★★☆│Algorithms - GeeksforGeeks │A website with a large archive of nicely written articles on different topics. It is a great complimentary │
│ │ (https://www.geeksforgeeks.org/fundamentals-of-algorithms/) │resource for algorithm courses. │
│★★☆│PEGWiki (http://wcipeg.com/wiki/Special:AllPages) │A website with amazing in-depth wiki-like writeups on many topics. It's far better than those on Wikipedia │
│ │ │in my opinion. │
│★★☆│Notes - HackerEarth (https://www.hackerearth.com/practice/notes/trending/) │A great crowdsourcing platform for tutorials. Also visit Code Monk  │
│ │ │(https://www.hackerearth.com/practice/codemonk/). │
│★★☆│USA Computing Olympiad (USACO) (http://www.usaco.org/) │Contains several training pages on its website which are designed to develop one's skills in programming  │
│ │ │solutions to difficult and varied algorithmic problems at one's own pace. │
│★★☆│basecs (https://medium.com/basecs) │A blog with in-depth, illustrated tutorials on basic algorithms and data structures. │
│★│Competitive Programming - Commonlounge  │Short video tutorials for beginner and intermediate concepts. Advanced tutorials selected from the best  │
│ │(https://www.commonlounge.com/discussion/d4a14f601eb44281b6c579e73d126cca/mai│ones available on various CP blogs. │
│ │n?r=acp) │ │
│★│OLYMPIADS IN INFORMATICS │An international journal focused on the research and practice of professionals who are working in the field│
│ │ (https://www.mii.lt/olympiads_in_informatics/index.html) │of teaching and learning informatics to talented student. │
│★│algolist (Russian) (http://algolist.manual.ru/) │A Russian website devoted to algorithms of all sorts. Some topics listed on this website seems pretty  │
│ │ │interesting. │
│★★│演算法筆記 (Algorithm Notes) (Chinese) (http://web.ntnu.edu.tw/~algo/) │One of the most popular tutorial websites among the Taiwanese competitive programming community. The  │
│ │ │maintainer for this website spends immense efforts on researching algorithms. │
│★★☆│国家集训队论文 1999-2015 (Papers from Chinese IOI training camps) (Chinese) │Papers from the Chinese IOI training camps. It's interesting for the fact that one can tell different  │
│ │ (http://download.csdn.net/album/detail/657/1/1) │regions emphasize different things. │
│★★★│Mini-Editorials (https://github.com/mostafa-saad/MyCompetitiveProgramming),  │Solutions with mini-editorials for many problems, including UVA/SPOJ/IOI/Olympiad problems │
│ │by Mostafa Saad Ibrahim (https://sites.google.com/site/mostafasibrahim/)  │ │
│ │trainees │ │
│★★☆│OI Wiki (Competitive Programming) (Chinese) (https://oi-wiki.org/) │OI Wiki is committed to being a free and open continuously updated programming competition (competitive  │
│ │ │programming) knowledge integration site. This wiki is a sort of companion or guide for the competitive  │
│ │ │programmer who's trying to learn something │
Open Courses
▐ Consider beginning your competitive programming journey with these awesome courses!
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────┤
│★★☆│Code Monk (https://www.hackerearth.com/practice/codemonk/), by HackerEarth │A fantastic step-by-step tutorial on the essential topics in competitive programming. │
│★★★│Stanford CS 97SI: Introduction to Competitive Programming Contests (http://web.stanford.edu/class/cs97si/) │Offers comprehensive lecture slides and a short list of exercise problems. │
│★★│How to Win Coding Competitions: Secrets of Champions │A course by ITMO University on competitive coding on edX. │
│ │ (https://www.edx.org/course/how-to-win-coding-competitions-secrets-of-champions-0) │ │
│★★☆│Codechef's Indian Programming Camp (https://www.youtube.com/playlist?list=PLi0ZM-RCX5nsTc2Z6woHr5qoF6n3b-thO)│Video Lectures from Codechef's Indian Programming Camp 2016  │
│ │ │(https://blog.codechef.com/2016/08/03/lectures-from-indian-coding-camp/). Lectures given by top│
│ │ │competitive programmers like Sergey Kulik, Kevin Charles Atienza and Anudeep Nekkanti.  │
│ │ │Primarily focused on exploring these concepts by applying them to actual competitive contest  │
│ │ │problems. │
│★★☆│Reykjavik T-414-ÁFLV: A Competitive Programming Course (https://algo.is/competitive-programming-course/) │An awesome course taught by Bjarki Ágúst Guðmundsson (SuprDewd) (https://algo.is). These  │
│ │ │lectures feature neat slides and a nice list of problems to practice. │
│★★☆│NCTU DCP4631: Problem Solving and Programming Techniques │A course on basic topics featuring good lecture slides. │
│ │ (https://sites.google.com/site/mzshieh/courses/problem-solving-and-programming-techniques-spring-2014) │ │
│★│Materials (English) (https://github.com/mostafa-saad/ArabicCompetitiveProgramming) from Arabic Competitive  │Some materials (slides & source codes) covering a broad range of algorithmic topics by Mostafa │
│ │Programming YouTube Channel (https://www.youtube.com/user/nobody123497) │Saad Ibrahim. │
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────┤
│★★☆│Code Monk (https://www.hackerearth.com/practice/codemonk/), by HackerEarth │A fantastic step-by-step tutorial on the essential topics in competitive  │
│ │ │programming. │
│★★│Stanford CS 97SI: Introduction to Competitive Programming Contests (http://web.stanford.edu/class/cs97si/) │Offers comprehensive lecture slides and a short list of exercise problems. │
│★★☆│How to Win Coding Competitions: Secrets of Champions │A course by ITMO University on competitive coding on edX. │
│ │ (https://www.edx.org/course/how-to-win-coding-competitions-secrets-of-champions-0) │ │
│★★☆│Codechef's Indian Programming Camp (https://www.youtube.com/playlist?list=PLi0ZM-RCX5nsTc2Z6woHr5qoF6n3b-thO)│Video Lectures from Codechef's Indian Programming Camp 2016  │
│ │ │(https://blog.codechef.com/2016/08/03/lectures-from-indian-coding-camp/).  │
│ │ │Lectures given by top competitive programmers like Sergey Kulik, Kevin  │
│ │ │Charles Atienza and Anudeep Nekkanti. Primarily focused on exploring these │
│ │ │concepts by applying them to actual competitive contest problems. │
│★★☆│Reykjavik T-414-ÁFLV: A Competitive Programming Course (https://algo.is/competitive-programming-course/) │An awesome course taught by Bjarki Ágúst Guðmundsson (SuprDewd)  │
│ │ │(https://algo.is). These lectures feature neat slides and a nice list of  │
│ │ │problems to practice. │
│★│NCTU DCP4631: Problem Solving and Programming Techniques │A course on basic topics featuring good lecture slides. │
│ │ (https://sites.google.com/site/mzshieh/courses/problem-solving-and-programming-techniques-spring-2014) │ │
│★☆☆│Materials (English) (https://github.com/mostafa-saad/ArabicCompetitiveProgramming) from Arabic Competitive  │Some materials (slides & source codes) covering a broad range of  │
│ │Programming YouTube Channel (https://www.youtube.com/user/nobody123497) │algorithmic topics by Mostafa Saad Ibrahim. │
Open Courses for Algorithms and Data Structures
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│prakhar1989/awesome-courses#algorithms │A fantastic list of open courses offered by notable institutions (MIT, Stanford, UC Berkeley ... etc.). │
│ │ (https://github.com/prakhar1989/awesome-courses#algorithms) │ │
│★★★│MIT SMA 5503: Introduction to Algorithms  │Lectured by Prof. Charles Leiserson (one of the coauthors of Introduction to Algorithms) and Prof. Erik Demaine (a  │
│ │(https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introd│brilliant professor who has made remarkable breakthroughs in data science), the course offers great materials,  │
│ │uction-to-algorithms-sma-5503-fall-2005/) │accompanied by intuitive and comprehensive analyses. │
│★★☆│UIUC Algorithm Course (http://jeffe.cs.illinois.edu/teaching/algorithms/) │lecture notes, homeworks, exams, and discussion problems covering a broad range of algorithmic topics │
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│prakhar1989/awesome-courses#algorithms │A fantastic list of open courses offered by notable institutions (MIT, Stanford, UC Berkeley ...  │
│ │ (https://github.com/prakhar1989/awesome-courses#algorithms) │etc.). │
│★★★│MIT SMA 5503: Introduction to Algorithms  │Lectured by Prof. Charles Leiserson (one of the coauthors of Introduction to Algorithms) and Prof.│
│ │(https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-introd│Erik Demaine (a brilliant professor who has made remarkable breakthroughs in data science), the  │
│ │uction-to-algorithms-sma-5503-fall-2005/) │course offers great materials, accompanied by intuitive and comprehensive analyses. │
│★★☆│UIUC Algorithm Course (http://jeffe.cs.illinois.edu/teaching/algorithms/) │lecture notes, homeworks, exams, and discussion problems covering a broad range of algorithmic  │
│ │ │topics │
Books
▐ A list of recommended books for competitive programming.
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★☆│Competitive Programming (https://cpbook.net/), by Steven and Felix Halim │This book contains a collection of relevant data structures, algorithms, and programming tips.  │
│ │ │It's a well-received book. ... The first edition is free for download (pdf)  │
│ │ │(http://www.comp.nus.edu.sg/~stevenha/myteaching/competitive_programming/cp1.pdf). │
│★★☆│Programming Challenges: The Programming Contest Training Manual  │This book includes more than 100 programming challenges, as well as the theory and key concepts  │
│ │(https://www.amazon.com/Programming-Challenges-Contest-Training-Computer/dp/0387001638), by Steven Skiena  │necessary for approaching them. Problems are organized by topic, and supplemented by complete  │
│ │and Miguel Revilla │tutorial material. │
│★★☆│Competitive Programmer's Handbook (https://cses.fi/book/index.html), by Antti Laaksonen │An introduction to competitive programming for aspiring IOI and ICPC contestants. Free to  │
│ │ │download (pdf) (https://cses.fi/book/book.pdf). │
│★★☆│Algorithmic Thinking: A Problem-Based Introduction │A book that teaches data structures and algorithms using competitive programming problems (IOI,  │
│ │ (https://nostarch.com/algorithmic-thinking), by Daniel Zingaro │USACO, CCC/CCO, etc.). │
│★★☆│Computational Geometry: Algorithms and Applications  │This is a well-written book which covers a broad range of computational geometry problems. │
│ │(https://www.amazon.com/Computational-Geometry-Applications-Mark-Berg/dp/3540779736), by Mark de Berg,  │ │
│ │Otfried Cheong, Marc van Kreveld, Mark Overmars │ │
│★☆☆│The Hitchhikers Guide to the Programming Contests │This book is free for download (pdf) (http://comscigate.com/Books/contests/icpc.pdf). This book  │
│ │ (http://comscigate.com/Books/contests/icpc.pdf), by Nite Nimajneb │covers various topics relevant to competitive programming. │
│★★★│プログラミングコンテストチャレンジブック (Japanese) (http://goo.gl/M4yfbr), by 秋葉拓哉, 岩田陽一, 北川宜稔│An absolutely phenomenal book. The contents, organized in a very coherent manner, are nothing  │
│ │ │short of amazing. ... 培養與鍛鍊程式設計的邏輯腦:世界級程式設計大賽的知識、心得與解題分享  │
│ │ │(Chinese Traditional) │
│★★│算法竞赛入门经典 (Chinese) (http://www.tup.com.cn/booksCenter/book_05568701.html), by 刘汝佳 │The Art of Algorithms and Programming Contests (English),  │
│ │ │打下好基礎:程式設計與演算法競賽入門經典 (Chinese Traditional) │
│★★☆│算法竞赛入门经典——训练指南 (Chinese) │提升程式設計的解題思考力─國際演算法程式設計競賽訓練指南 (Chinese Traditional) │
│ │ (https://www.amazon.cn/算法竞赛入门经典-训练指南-刘汝佳/dp/B009SJJGOU), by 刘汝佳, 陈锋 │ │
│★★│算法艺术与信息学竞赛 (Chinese) (http://goo.gl/O1tr8v), by 刘汝佳, 黄亮 │An old-time classic. It's old but the contents in this book are still considered to be very  │
│ │ │difficult by today's standards. │
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────┤
│★★☆│Competitive Programming (https://cpbook.net/), by Steven and Felix Halim │This book contains a collection of relevant data structures, algorithms, and │
│ │ │programming tips. It's a well-received book. ... The first edition is free  │
│ │ │for download (pdf)  │
│ │ │(http://www.comp.nus.edu.sg/~stevenha/myteaching/competitive_programming/cp1.│
│ │ │pdf). │
│★★☆│Programming Challenges: The Programming Contest Training Manual  │This book includes more than 100 programming challenges, as well as the  │
│ │(https://www.amazon.com/Programming-Challenges-Contest-Training-Computer/dp/0387001638), by Steven Skiena  │theory and key concepts necessary for approaching them. Problems are  │
│ │and Miguel Revilla │organized by topic, and supplemented by complete tutorial material. │
│★★☆│Competitive Programmer's Handbook (https://cses.fi/book/index.html), by Antti Laaksonen │An introduction to competitive programming for aspiring IOI and ICPC  │
│ │ │contestants. Free to download (pdf) (https://cses.fi/book/book.pdf). │
│★★☆│Algorithmic Thinking: A Problem-Based Introduction │A book that teaches data structures and algorithms using competitive  │
│ │ (https://nostarch.com/algorithmic-thinking), by Daniel Zingaro │programming problems (IOI, USACO, CCC/CCO, etc.). │
│★★☆│Computational Geometry: Algorithms and Applications  │This is a well-written book which covers a broad range of computational  │
│ │(https://www.amazon.com/Computational-Geometry-Applications-Mark-Berg/dp/3540779736), by Mark de Berg,  │geometry problems. │
│ │Otfried Cheong, Marc van Kreveld, Mark Overmars │ │
│★☆☆│The Hitchhikers Guide to the Programming Contests │This book is free for download (pdf)  │
│ │ (http://comscigate.com/Books/contests/icpc.pdf), by Nite Nimajneb │(http://comscigate.com/Books/contests/icpc.pdf). This book covers various  │
│ │ │topics relevant to competitive programming. │
│★★│プログラミングコンテストチャレンジブック (Japanese) (http://goo.gl/M4yfbr), by 秋葉拓哉, 岩田陽一, 北川宜稔│An absolutely phenomenal book. The contents, organized in a very coherent  │
│ │ │manner, are nothing short of amazing. ...  │
│ │ │培養與鍛鍊程式設計的邏輯腦:世界級程式設計大賽的知識、心得與解題分享 (Chinese│
│ │ │Traditional) │
│★★│算法竞赛入门经典 (Chinese) (http://www.tup.com.cn/booksCenter/book_05568701.html), by 刘汝佳 │The Art of Algorithms and Programming Contests (English),  │
│ │ │打下好基礎:程式設計與演算法競賽入門經典 (Chinese Traditional) │
│★★☆│算法竞赛入门经典——训练指南 (Chinese) │提升程式設計的解題思考力─國際演算法程式設計競賽訓練指南 (Chinese Traditional)│
│ │ (https://www.amazon.cn/算法竞赛入门经典-训练指南-刘汝佳/dp/B009SJJGOU), by 刘汝佳, 陈锋 │ │
│★★★│算法艺术与信息学竞赛 (Chinese) (http://goo.gl/O1tr8v), by 刘汝佳, 黄亮 │An old-time classic. It's old but the contents in this book are still  │
│ │ │considered to be very difficult by today's standards. │
Books for Algorithms
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Introduction to Algorithms (https://mitpress.mit.edu/books/introduction-algorithms), by Thomas H.  │Also known as CLRS (taken from name initials), this book is often referred to as the "bible" for  │
│ │Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein │algorithms and data structures. It's one of the most popular textbooks for university algorithm courses.│
│ │ │This book covered various algorithms and data structures in great detail. The writing is more rigorous  │
│ │ │and can be difficult to some. │
│★★☆│Algorithm Design (http://amzn.to/VjhioK), by Jon Kleinberg and Éva Tardos │This book revolves around techniques for designing algorithms. It's well-organized and written in a  │
│ │ │clear, understandable language. Each chapter is backed with practical examples and helpful exercises.  │
│ │ │The chapter on network flow is highly praised by lots. ... The lecture slides that accompany the  │
│ │ │textbook are available on its official website (http://www.cs.princeton.edu/~wayne/kleinberg-tardos/). │
│★★☆│The Algorithm Design Manual │The book is written in more readable text. Some find it comprehensive than other books. You can also  │
│ │ (https://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1848000693), by Steven S. Skiena │find some good resources (including the author's own video lectures) on its official website  │
│ │ │(http://www.algorist.com). │
│★★★│Algorithms (https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X), by Robert  │This book is neatly categorized, coupled with elaborate explanations and fantastic illustrations. It is │
│ │Sedgewick and Kevin Wayne │used in some IOI training camps as a textbook. │
│ │Algorithms and Data Structures in Action │This book provides a different approach to algorithms, balancing theory with a more practical angle,  │
│ │ (https://www.manning.com/books/algorithms-and-data-structures-in-action), by Marcello La Rocca │with a section per-chapter focusing on how to apply algorithms to real-world use cases that can be found│
│ │ │in your daily work, or in competitive programming; it also presents a blend of classic, advanced, and  │
│ │ │new algorithms. │
│★★★│Algorithms (https://jeffe.cs.illinois.edu/teaching/algorithms/), by Jeff Erickson │A free electronic version of a self-published textbook licensed under CC by 4.0. This is a well written │
│ │ │book from lecture notes of theoretical computer science courses at the University of Illinois. Covers  │
│ │ │the main paradigms of backtracking, dynamic programming, greedy, and particularly graphs in depth. │
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Introduction to Algorithms (https://mitpress.mit.edu/books/introduction-algorithms), by Thomas H.  │Also known as CLRS (taken from name initials), this book is often referred to as the│
│ │Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein │"bible" for algorithms and data structures. It's one of the most popular textbooks  │
│ │ │for university algorithm courses. This book covered various algorithms and data  │
│ │ │structures in great detail. The writing is more rigorous and can be difficult to  │
│ │ │some. │
│★★☆│Algorithm Design (http://amzn.to/VjhioK), by Jon Kleinberg and Éva Tardos │This book revolves around techniques for designing algorithms. It's well-organized  │
│ │ │and written in a clear, understandable language. Each chapter is backed with  │
│ │ │practical examples and helpful exercises. The chapter on network flow is highly  │
│ │ │praised by lots. ... The lecture slides that accompany the textbook are available on│
│ │ │its official website (http://www.cs.princeton.edu/~wayne/kleinberg-tardos/). │
│★★☆│The Algorithm Design Manual │The book is written in more readable text. Some find it comprehensive than other  │
│ │ (https://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1848000693), by Steven S. Skiena │books. You can also find some good resources (including the author's own video  │
│ │ │lectures) on its official website (http://www.algorist.com). │
│★★★│Algorithms (https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X), by Robert  │This book is neatly categorized, coupled with elaborate explanations and fantastic  │
│ │Sedgewick and Kevin Wayne │illustrations. It is used in some IOI training camps as a textbook. │
│ │Algorithms and Data Structures in Action │This book provides a different approach to algorithms, balancing theory with a more │
│ │ (https://www.manning.com/books/algorithms-and-data-structures-in-action), by Marcello La Rocca │practical angle, with a section per-chapter focusing on how to apply algorithms to  │
│ │ │real-world use cases that can be found in your daily work, or in competitive  │
│ │ │programming; it also presents a blend of classic, advanced, and new algorithms. │
│★★★│Algorithms (https://jeffe.cs.illinois.edu/teaching/algorithms/), by Jeff Erickson │A free electronic version of a self-published textbook licensed under CC by 4.0.  │
│ │ │This is a well written book from lecture notes of theoretical computer science  │
│ │ │courses at the University of Illinois. Covers the main paradigms of backtracking,  │
│ │ │dynamic programming, greedy, and particularly graphs in depth. │
Books for Mathematics
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────┤
│★★☆│Discrete Mathematics and Its Applications │Discrete Mathematics is closely relevant to competitive  │
│ │ (https://www.amazon.com/Discrete-Mathematics-Applications-Kenneth-Rosen/dp/0072899050), by Kenneth H. Rosen │programming. This book provides comprehensive materials on│
│ │ │a wide range of topics including: Logics and Proofs, Sets,│
│ │ │Functions, Sequences, Matrices, Number Theory, Recursion, │
│ │ │Counting, Probability, Graphs, Trees and Boolean Alegra to│
│ │ │name but a few. │
│★★☆│Concrete Mathematics: A Foundation for Computer Science │The book offers a deeper insight into Discrete Mathematics│
│ │ (https://www.amazon.com/Concrete-Mathematics-Foundation-Computer-Science/dp/0201558025), by Ronald L. Graham, Donald E. Knuth, Oren Patashnik │with more emphases on number-related topics. │
│★★☆│Linear Algebra and Its Applications  │The book does a brilliant job at bridging the gap between │
│ │(https://www.amazon.com/Linear-Algebra-Its-Applications-5th/dp/032198238X/ref=sr_1_1?ie=UTF8&qid=1455475253&sr=8-1&keywords=Linear+Algebra+and+Its│a physical system (for scientists and engineers) and an  │
│ │+Applications), by David C. Lay, Steven R. Lay, Judi J. McDonald │abstract system (for mathematicians). │
│★★☆│Introduction to Probability │This is a well-written introductory probabilities book.  │
│ │ (http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/book.html), by Charles M. Grinstead, J. Laurie Snell │... It's free for download (pdf)  │
│ │ │(http://www.dartmouth.edu/~chance/teaching_aids/books_arti│
│ │ │cles/probability_book/amsbook.mac.pdf) (released under GNU│
│ │ │Free Documentation License). │
│★★☆│How to Solve It: A New Aspect of Mathematical Method (https://www.amazon.com/How-Solve-It-Mathematical-Princeton/dp/069111966X), by G. Polya │An old-time classic. In this book, the author provides a  │
│ │ │systematic way to solve problems creatively. │
│★★☆│Intermediate Counting & Probability (https://artofproblemsolving.com/store/item/intermediate-counting), by David Patrick │Topics in counting and probability byformer USA  │
│ │ │Mathematical Olympiad winner David Patrick , topics  │
│ │ │include inclusion-exclusion, 1-1 correspondences, the  │
│ │ │Pigeonhole Principle, constructive expectation, Fibonacci │
│ │ │and Catalan numbers, recursion, conditional probability,  │
│ │ │generating functions, graph theory, and much more.. │
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────┤
│★★☆│Discrete Mathematics and Its Applications │Discrete Mathematics is closely  │
│ │ (https://www.amazon.com/Discrete-Mathematics-Applications-Kenneth-Rosen/dp/0072899050), by Kenneth H. Rosen │relevant to competitive programming.  │
│ │ │This book provides comprehensive  │
│ │ │materials on a wide range of topics  │
│ │ │including: Logics and Proofs, Sets,  │
│ │ │Functions, Sequences, Matrices, Number│
│ │ │Theory, Recursion, Counting,  │
│ │ │Probability, Graphs, Trees and Boolean│
│ │ │Alegra to name but a few. │
│★★☆│Concrete Mathematics: A Foundation for Computer Science │The book offers a deeper insight into │
│ │ (https://www.amazon.com/Concrete-Mathematics-Foundation-Computer-Science/dp/0201558025), by Ronald L. Graham, Donald E. Knuth, Oren Patashnik │Discrete Mathematics with more  │
│ │ │emphases on number-related topics. │
│★★☆│Linear Algebra and Its Applications  │The book does a brilliant job at  │
│ │(https://www.amazon.com/Linear-Algebra-Its-Applications-5th/dp/032198238X/ref=sr_1_1?ie=UTF8&qid=1455475253&sr=8-1&keywords=Linear+Algebra+and+Its│bridging the gap between a physical  │
│ │+Applications), by David C. Lay, Steven R. Lay, Judi J. McDonald │system (for scientists and engineers) │
│ │ │and an abstract system (for  │
│ │ │mathematicians). │
│★★☆│Introduction to Probability │This is a well-written introductory  │
│ │ (http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/book.html), by Charles M. Grinstead, J. Laurie Snell │probabilities book. ... It's free for │
│ │ │download (pdf)  │
│ │ │(http://www.dartmouth.edu/~chance/teac│
│ │ │hing_aids/books_articles/probability_b│
│ │ │ook/amsbook.mac.pdf) (released under  │
│ │ │GNU Free Documentation License). │
│★★☆│How to Solve It: A New Aspect of Mathematical Method (https://www.amazon.com/How-Solve-It-Mathematical-Princeton/dp/069111966X), by G. Polya │An old-time classic. In this book, the│
│ │ │author provides a systematic way to  │
│ │ │solve problems creatively. │
│★★☆│Intermediate Counting & Probability (https://artofproblemsolving.com/store/item/intermediate-counting), by David Patrick │Topics in counting and probability  │
│ │ │byformer USA Mathematical Olympiad  │
│ │ │winner David Patrick , topics include│
│ │ │inclusion-exclusion, 1-1  │
│ │ │correspondences, the Pigeonhole  │
│ │ │Principle, constructive expectation,  │
│ │ │Fibonacci and Catalan numbers,  │
│ │ │recursion, conditional probability,  │
│ │ │generating functions, graph theory,  │
│ │ │and much more.. │
Sites for Practice
▐ Good online judge systems / contest platforms to practice.
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Codeforces (http://codeforces.com/) │Codeforces is one of, if not, the most popular contest platforms out there. Currently maintained by Saratov State University, it features regular contests and  │
│ │ │countless awesome original problems. Additionally, every contest provides immediate helpful tutorials (usually) written by the authors themselves. Codeforces also  │
│ │ │houses a strong and engaging community. All in all, one would indeed learn and improve tremendously here. │
│★★★│Topcoder (https://www.topcoder.com/) │Topcoder has been around since 2001. Rich in history, It's considered to be one of the most prestigious organizations when it comes to technology competitions.  │
│ │ │Hundreds of SRMs gave birth to an abundant problemset. Problems here are typically more challenging than others and Topcoder therefore appeals to many elite  │
│ │ │programmers. The annual Topcoder Open (TCO) is also a widely-discussed event. │
│★★★│Google Code Jam │Google Code Jam is certainly one of the most highly-esteemed programming competitions. The competition consists of unique programming challenges which must be solved  │
│ │ (https://code.google.com/codejam/) │in a fixed amount of time. Competitors may use any programming language and development environment to obtain their solutions. │
│★★★│AtCoder (https://atcoder.jp) │AtCoder is a new but phenomenal contest platform created by a team of highly-rated Japanese competitive programmers. │
│★★☆│CodeChef (https://www.codechef.com/) │CodeChef is a non-profit educational initiative of Directi. It's a global competitive programming platform and has a large community of programmers that helps students│
│ │ │and professionals test and improve their coding skills. Its objective is to provide a platform for practice, competition and improvement for both students and  │
│ │ │professional software developers. Apart from this, it aims to reach out to students while they are young and inculcate a culture of programming in India. │
│★★★│SPOJ (https://www.spoj.com/) │The SPOJ platform is centered around an online judge system. It holds a staggering amount of problems prepared by its community of problem setters or taken from  │
│ │ │previous programming contests, some of which are great problems for practice (refer to the Problem classifiers (#problem-classifiers) section). SPOJ also allows  │
│ │ │advanced users to organize contests under their own rules. │
│★★☆│Timus (http://acm.timus.ru/) │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 (http://acm.hdu.edu.cn/) │HDU is an online judge maintained by Hangzhou Dianzi University. It's home to many classic problems from the Chinese IOI scene. │
│★│Aizu Online Judge  │Aizu online judge is a contest platform and problem archive hosted by The University of Aizu. It has a lot of great problems from programming competitions in Japan. │
│ │(http://judge.u-aizu.ac.jp/onlinejudg│ │
│ │e/index.jsp) │ │
│★★☆│UVa (https://uva.onlinejudge.org/) │An old-school problem archive / online judge with rich history. Thousands of problems, including many classic ones, are featured here. However, it is strongly advised │
│ │ │that you practice with uHunt (https://uhunt.onlinejudge.org/id/0) following its "Competitive Programming Exercise" section. │
│★★☆│HackerRank │HackerRank is a company that focuses on competitive programming challenges for both consumers and businesses. HackerRank's programming challenges can be solved in a  │
│ │ (https://www.hackerrank.com) │variety of programming languages and span multiple computer science domains. │
│★★☆│POJ (http://poj.org/) │POJ is an online judge with many great problems maintained by Peking University. Most Chinese competitive programmers began their journey here. The platform is really │
│ │ │dated so mysterious compilation and run-time issues may occur. │
│★★☆│Project Euler │Project Euler features a stunning set of good math problems. It also hosts a forum where people can discuss. │
│ │ (https://projecteuler.net/) │ │
│★☆☆│Hackerearth │HackerEarth is a startup technology company based in Bangalore, India that provides recruitment solutions. │
│ │ (https://www.hackerearth.com/) │ │
│★☆☆│Caribbean Online Judge │COJ is hosted by University of Informatics Sciences (UCI, by its acronym in Spanish), located in Cuba. Feature ACM ICPC and Progressive contest styles, mostly from  │
│ │ (http://coj.uci.cu/index.xhtml) │Caribbean and Latin American problem setters, also has problem classifier and contest calendar. │
│★★☆│CS Academy (https://csacademy.com) │New in the competitive programming scene, CS Academy is a growing online judge that hosts competitions once every two weeks. It supports live chat, interactive lessons│
│ │ │and an integrated online editor (that actually works). │
│★★☆│Russian Code Cup │Programming competitions powered by Mail.Ru Group. Competition consists of 3 qualification, 1 elimination and 1 final rounds. For each round contestants are given 4-8 │
│ │ (https://www.russiancodecup.ru/en/) │problems which must be solved in a fixed amount of time. │
│★★☆│CodeFights (https://codesignal.com/) │CodeFights is a website for competitive programming practice and interview preparation. It features daily challenges of varying difficulty, an archive of problems and │
│ │ │regular (every 15 minutes) mini-tournaments. Good for beginners. │
│★★☆│OmegaUp │OmegaUp is a community-based website for competitive programing training. It's also where Mexican Olympiad in Informatics (OMI : Olimpiada Mexicana de Informática) is │
│ │ (https://omegaup.com/) (Spanish) │hosted. │
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Codeforces (http://codeforces.com/) │Codeforces is one of, if not, the most popular contest platforms out there. Currently maintained by Saratov State University, it features regular  │
│ │ │contests and countless awesome original problems. Additionally, every contest provides immediate helpful tutorials (usually) written by the authors│
│ │ │themselves. Codeforces also houses a strong and engaging community. All in all, one would indeed learn and improve tremendously here. │
│★★★│Topcoder (https://www.topcoder.com/) │Topcoder has been around since 2001. Rich in history, It's considered to be one of the most prestigious organizations when it comes to technology  │
│ │ │competitions. Hundreds of SRMs gave birth to an abundant problemset. Problems here are typically more challenging than others and Topcoder  │
│ │ │therefore appeals to many elite programmers. The annual Topcoder Open (TCO) is also a widely-discussed event. │
│★★★│Google Code Jam │Google Code Jam is certainly one of the most highly-esteemed programming competitions. The competition consists of unique programming challenges  │
│ │ (https://code.google.com/codejam/) │which must be solved in a fixed amount of time. Competitors may use any programming language and development environment to obtain their solutions.│
│★★★│AtCoder (https://atcoder.jp) │AtCoder is a new but phenomenal contest platform created by a team of highly-rated Japanese competitive programmers. │
│★★☆│CodeChef (https://www.codechef.com/) │CodeChef is a non-profit educational initiative of Directi. It's a global competitive programming platform and has a large community of programmers│
│ │ │that helps students and professionals test and improve their coding skills. Its objective is to provide a platform for practice, competition and  │
│ │ │improvement for both students and professional software developers. Apart from this, it aims to reach out to students while they are young and  │
│ │ inculcate a culture of programming in India. │
│★★★│SPOJ (https://www.spoj.com/) │The SPOJ platform is centered around an online judge system. It holds a staggering amount of problems prepared by its community of problem setters │
│ │ │or taken from previous programming contests, some of which are great problems for practice (refer to the Problem classifiers (#problem-classifiers)│
│ │ │section). SPOJ also allows advanced users to organize contests under their own rules. │
│★★☆│Timus (http://acm.timus.ru/) │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 (http://acm.hdu.edu.cn/) │HDU is an online judge maintained by Hangzhou Dianzi University. It's home to many classic problems from the Chinese IOI scene. │
│★★☆│Aizu Online Judge  │Aizu online judge is a contest platform and problem archive hosted by The University of Aizu. It has a lot of great problems from programming  │
│ │(http://judge.u-aizu.ac.jp/onlinejudg│competitions in Japan. │
│ │e/index.jsp) │ │
│★★☆│UVa (https://uva.onlinejudge.org/) │An old-school problem archive / online judge with rich history. Thousands of problems, including many classic ones, are featured here. However, it │
│ │ │is strongly advised that you practice with uHunt (https://uhunt.onlinejudge.org/id/0) following its "Competitive Programming Exercise" section. │
│★★☆│HackerRank │HackerRank is a company that focuses on competitive programming challenges for both consumers and businesses. HackerRank's programming challenges  │
│ │ (https://www.hackerrank.com) │can be solved in a variety of programming languages and span multiple computer science domains. │
│★★☆│POJ (http://poj.org/) │POJ is an online judge with many great problems maintained by Peking University. Most Chinese competitive programmers began their journey here. The│
│ │ │platform is really dated so mysterious compilation and run-time issues may occur. │
│★★☆│Project Euler │Project Euler features a stunning set of good math problems. It also hosts a forum where people can discuss. │
│ │ (https://projecteuler.net/) │ │
│★☆☆│Hackerearth │HackerEarth is a startup technology company based in Bangalore, India that provides recruitment solutions. │
│ │ (https://www.hackerearth.com/) │ │
│★☆☆│Caribbean Online Judge │COJ is hosted by University of Informatics Sciences (UCI, by its acronym in Spanish), located in Cuba. Feature ACM ICPC and Progressive contest  │
│ │ (http://coj.uci.cu/index.xhtml) │styles, mostly from Caribbean and Latin American problem setters, also has problem classifier and contest calendar. │
│★★☆│CS Academy (https://csacademy.com) │New in the competitive programming scene, CS Academy is a growing online judge that hosts competitions once every two weeks. It supports live chat,│
│ │ │interactive lessons and an integrated online editor (that actually works). │
│★★☆│Russian Code Cup │Programming competitions powered by Mail.Ru Group. Competition consists of 3 qualification, 1 elimination and 1 final rounds. For each round  │
│ │ (https://www.russiancodecup.ru/en/) │contestants are given 4-8 problems which must be solved in a fixed amount of time. │
│★★☆│CodeFights (https://codesignal.com/) │CodeFights is a website for competitive programming practice and interview preparation. It features daily challenges of varying difficulty, an  │
│ │ │archive of problems and regular (every 15 minutes) mini-tournaments. Good for beginners. │
│★★☆│OmegaUp │OmegaUp is a community-based website for competitive programing training. It's also where Mexican Olympiad in Informatics (OMI : Olimpiada Mexicana│
│ │ (https://omegaup.com/) (Spanish) │de Informática) is hosted. │
Problem Classifiers
▐ Sites classifying programming problems. 
@@ -292,59 +324,66 @@
▐ Calendars for impending programming contests. 
(Never miss another contest!)
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────┤
│★★★│Programming Contest Calendar - HackerRank (https://www.hackerrank.com/calendar) │Google Calendar export available│
│★★☆│clist.by (https://clist.by/) │API available for use │
│★★☆│Coding Calendar (Android App) (https://play.google.com/store/apps/details?id=com.limitskyapps.CodingCalendar) │ │
│★★☆│Coder's Calendar (https://github.com/nishanthvijayan/CoderCalendar): Android App (https://play.google.com/store/apps/details?id=com.corphots.coderscalendar), Chrome  │ │
│ │Extension (https://chrome.google.com/webstore/detail/coders-calendar/bageaffklfkikjigoclfgengklfnidll), Firefox Add-on  │ │
│ │(https://addons.mozilla.org/en-US/firefox/addon/coder-calendar/) │ │
│★★★│CodeHorizon (http://codehorizon.star-lord.me/): iOS App (https://itunes.apple.com/in/app/codehorizon/id925056167?mt=8), Android App  │ │
│ │(https://play.google.com/store/apps/details?id=com.chintanghate.CodeHorizon) │ │
│★★★│Competitive Programming Contests Calendar (https://competitiveprogramming.info/calendar) │Google Calendar export available│
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────┤
│★★★│Programming Contest Calendar - HackerRank (https://www.hackerrank.com/calendar) │Google Calendar export available│
│★★☆│clist.by (https://clist.by/) │API available for use │
│★★☆│Coding Calendar (Android App) (https://play.google.com/store/apps/details?id=com.limitskyapps.CodingCalendar) │ │
│★★☆│Coder's Calendar (https://github.com/nishanthvijayan/CoderCalendar): Android App  │ │
│ │(https://play.google.com/store/apps/details?id=com.corphots.coderscalendar), Chrome Extension  │ │
│ │(https://chrome.google.com/webstore/detail/coders-calendar/bageaffklfkikjigoclfgengklfnidll), Firefox Add-on  │ │
│ │(https://addons.mozilla.org/en-US/firefox/addon/coder-calendar/) │ │
│★★★│CodeHorizon (http://codehorizon.star-lord.me/): iOS App (https://itunes.apple.com/in/app/codehorizon/id925056167?mt=8), Android App  │ │
│ │(https://play.google.com/store/apps/details?id=com.chintanghate.CodeHorizon) │ │
│★★★│Competitive Programming Contests Calendar (https://competitiveprogramming.info/calendar) │Google Calendar export available│
Sites for Questions
▐ These are great sites to ask questions. 
Paste your codes at ideone (https://ideone.com/), pastebin (https://pastebin.com/) or other sites to avoid formatting issues.
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Codeforces (http://codeforces.com/) │For quick answers, Codeforces is definitely the go-to place to ask about anything competition-related. │
│★★★│Competitive Programming - Quora (https://www.quora.com/topic/Competitive-Programming)│You would typically get more elaborate answers on Quora, but you might not have your questions answered straightaway.│
│★★│Theoretical Computer Science Stack Exchange (https://cstheory.stackexchange.com/) │This place is generally for the academics, so don't ask questions about contest problems here. │
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Codeforces (http://codeforces.com/) │For quick answers, Codeforces is definitely the go-to place to ask about anything  │
│ │ │competition-related. │
│★★│Competitive Programming - Quora (https://www.quora.com/topic/Competitive-Programming)│You would typically get more elaborate answers on Quora, but you might not have your questions  │
│ │ │answered straightaway. │
│★★☆│Theoretical Computer Science Stack Exchange (https://cstheory.stackexchange.com/) │This place is generally for the academics, so don't ask questions about contest problems here. │
Camps and Trainings
▐ Online Trainings and Camps.
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────┤
│★★★│Online Free Problem-Solving Coaching (https://codeforces.com/blog/mostafa.saad.fci), by Mostafa Saad Ibrahim  │See the coaching details and people comments on its nature/quality.│
│ │(https://sites.google.com/site/mostafasibrahim/) │ │
│ ☆ │ Name │ Description │
├───┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────┤
│★★★│Online Free Problem-Solving Coaching (https://codeforces.com/blog/mostafa.saad.fci), by Mostafa Saad Ibrahim  │See the coaching details and people comments on its nature/quality.│
│ │(https://sites.google.com/site/mostafasibrahim/) │ │
Implementations
▐ Algorithm & Data structure implementations. 
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│CodeLibrary (http://code-library.herokuapp.com/), by Andrey Naumenko (indy256) │CodeLibrary contains a large collection of implementations for algorithms and data structures in Java │
│ │ │and C++. You may also visit his GitHub Repository (https://github.com/indy256/codelibrary). │
│★★★│spaghetti-source/algorithm │High-quality implementations of many hard algorithms and data structures. │
│ │ (https://github.com/spaghetti-source/algorithm), by Takanori MAEHARA (@tmaehara) │ │
│★★★│kth-competitive-programming/kactl │A phenomenally organized, documented and tested team notebook from KTH Royal Institute of Technology. │
│ │ (https://github.com/kth-competitive-programming/kactl), by Simon Lindholm (simonlindholm) et al. │One of the most well-crafted team notebooks (contest libraries) I've ever seen. │
│★★☆│jaehyunp/stanfordacm (https://github.com/jaehyunp/stanfordacm) │Stanford's team notebook is well maintained and the codes within are of high-quality. │
│★★☆│ngthanhtrung23/ACM_Notebook_new (https://github.com/ngthanhtrung23/ACM_Notebook_new), by team RR  │RR Watameda represented National University of Singapore for the 2016 ACM-ICPC World Finals. The items│
│ │Watameda (I_love_Hoang_Yen, flashmt, nguyenhungtam) from National University of Singapore │in this notebook are pretty standard and well-organized. │
│★★☆│bobogei81123/bcw_codebook (https://github.com/bobogei81123/bcw_codebook), by team bcw0x1bd2 (darkhh,  │bcw0x1bd2 represented National Taiwan University for the 2016 ACM-ICPC World Finals. This notebook  │
│ │bobogei81123, step5) from National Taiwan University │contains robust implementations for advanced data structures and algorithms. │
│★☆☆│foreverbell/acm-icpc-cheat-sheet │A notebook with some advanced data structures and algorithms including some from the China informatics│
│ │ (https://github.com/foreverbell/acm-icpc-cheat-sheet), by foreverbell (foreverbell) │scene. │
│★☆☆│igor's code archive (http://shygypsy.com/tools/), by Igor Naverniouk (Abednego) │A good notebook by Igor Naverniouk who is currently a software engineer at Google and part of the  │
│ │ │Google Code Jam team. │
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────┤
│★★★│CodeLibrary (http://code-library.herokuapp.com/), by Andrey Naumenko (indy256) │CodeLibrary contains a large collection of implementations for algorithms and data│
│ │ │structures in Java and C++. You may also visit his GitHub Repository  │
│ │ │(https://github.com/indy256/codelibrary). │
│★★★│spaghetti-source/algorithm │High-quality implementations of many hard algorithms and data structures. │
│ │ (https://github.com/spaghetti-source/algorithm), by Takanori MAEHARA (@tmaehara) │ │
│★★★│kth-competitive-programming/kactl │A phenomenally organized, documented and tested team notebook from KTH Royal  │
│ │ (https://github.com/kth-competitive-programming/kactl), by Simon Lindholm (simonlindholm) et al. │Institute of Technology. One of the most well-crafted team notebooks (contest  │
│ │ │libraries) I've ever seen. │
│★★☆│jaehyunp/stanfordacm (https://github.com/jaehyunp/stanfordacm) │Stanford's team notebook is well maintained and the codes within are of  │
│ │ │high-quality. │
│★★☆│ngthanhtrung23/ACM_Notebook_new (https://github.com/ngthanhtrung23/ACM_Notebook_new), by team RR  │RR Watameda represented National University of Singapore for the 2016 ACM-ICPC  │
│ │Watameda (I_love_Hoang_Yen, flashmt, nguyenhungtam) from National University of Singapore │World Finals. The items in this notebook are pretty standard and well-organized. │
│★★☆│bobogei81123/bcw_codebook (https://github.com/bobogei81123/bcw_codebook), by team bcw0x1bd2 (darkhh,  │bcw0x1bd2 represented National Taiwan University for the 2016 ACM-ICPC World  │
│ │bobogei81123, step5) from National Taiwan University │Finals. This notebook contains robust implementations for advanced data structures│
│ │ │and algorithms. │
│★☆☆│foreverbell/acm-icpc-cheat-sheet │A notebook with some advanced data structures and algorithms including some from  │
│ │ (https://github.com/foreverbell/acm-icpc-cheat-sheet), by foreverbell (foreverbell) │the China informatics scene. │
│★☆☆│igor's code archive (http://shygypsy.com/tools/), by Igor Naverniouk (Abednego) │A good notebook by Igor Naverniouk who is currently a software engineer at Google │
│ │ │and part of the Google Code Jam team. │
Language Specifics
@@ -352,41 +391,47 @@
C/C++
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────┤
│★★☆│Power up C++ with the Standard Template Library - Topcoder: Part 1  │An introductory tutorial on basic C++ STLs. │
│ │(https://www.topcoder.com/community/data-science/data-science-tutorials/power-up-c-with-the-standard-template-library-part-1/), │ │
│ │Part 2  │ │
│ │(https://www.topcoder.com/community/data-science/data-science-tutorials/power-up-c-with-the-standard-template-library-part-2/) │ │
│★★☆│Yet again on C++ input/output - Codeforces (http://codeforces.com/blog/entry/5217) │Learn more about C++ I/O optimizations. │
│★★☆│C++ Tricks - Codeforces (http://codeforces.com/blog/entry/15643) ... What are some cool C++ tricks to use in a programming  │Plentiful C++ tricks for competitive programming. Note that some should be  │
│ │contest? - Quora (https://www.quora.com/Competitive-Programming/What-are-some-cool-C++-tricks-to-use-in-a-programming-contest) │used with care. │
│★★★│C++ STL: Policy based data structures - Codeforces: Part 1 (http://codeforces.com/blog/entry/11080), Part 2  │Detailed introduction to the extra data structures implemented in GNU C++.  │
│ │(http://codeforces.com/blog/entry/13279) │The official documentation can be found here  │
│ │ │(https://gcc.gnu.org/onlinedocs/libstdc++/ext/pb_ds/). │
│★☆☆│C++11 FAQ (English, Chinese, Russian, Japanese, Korean) (http://www.stroustrup.com/C++11FAQ.html) │A list of FAQs regarding C++11 collected and written by Bjarne Stroustrup,  │
│ │ │the creator of C++. │
│ ☆ │ Name │ Description │
├───┼────────────────────────────────────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────┤
│★★☆│Power up C++ with the Standard Template Library - Topcoder: Part 1  │An introductory tutorial on basic C++ STLs. │
│ │(https://www.topcoder.com/community/data-science/data-science-tutorials/power-up-c-with-the-standard-templat│ │
│ │e-library-part-1/), Part 2  │ │
│ │(https://www.topcoder.com/community/data-science/data-science-tutorials/power-up-c-with-the-standard-templat│ │
│ │e-library-part-2/) │ │
│★★☆│Yet again on C++ input/output - Codeforces (http://codeforces.com/blog/entry/5217) │Learn more about C++ I/O optimizations. │
│★★☆│C++ Tricks - Codeforces (http://codeforces.com/blog/entry/15643) ... What are some cool C++ tricks to use in│Plentiful C++ tricks for competitive programming. Note that some should be  │
│ │a programming contest? - Quora  │used with care. │
│ │(https://www.quora.com/Competitive-Programming/What-are-some-cool-C++-tricks-to-use-in-a-programming-contest│ │
│ │) │ │
│★★★│C++ STL: Policy based data structures - Codeforces: Part 1 (http://codeforces.com/blog/entry/11080), Part 2 │Detailed introduction to the extra data structures implemented in GNU C++.  │
│ │(http://codeforces.com/blog/entry/13279) │The official documentation can be found here  │
│ │ │(https://gcc.gnu.org/onlinedocs/libstdc++/ext/pb_ds/). │
│★☆☆│C++11 FAQ (English, Chinese, Russian, Japanese, Korean) (http://www.stroustrup.com/C++11FAQ.html) │A list of FAQs regarding C++11 collected and written by Bjarne Stroustrup,  │
│ │ │the creator of C++. │
Java
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────┤
│★★☆│How to read input in Java — tutorial - Codeforces (http://codeforces.com/blog/entry/7018) │Learn how to read input faster. This is a must-read for those who intend to use Java for  │
│ │ │competitive programming │
│★★☆│How to sort arrays in Java and avoid TLE - Codeforces (http://codeforces.com/blog/entry/7108) │Some tips on how to avoid hitting the worst case of quick sort │
│★★☆│BigNum arithmetic in Java — Let's outperform BigInteger! - Codeforces (http://codeforces.com/blog/entry/17235)│A basic but faster custom BigInteger class │
│★★☆│EZ Collections, EZ Life (new Java library for contests) - Codeforces (http://codeforces.com/blog/entry/14328) │A Java library for contests written by Alexey Dergunov (dalex). ArrayList, ArrayDeque, Heap,  │
│ │ │Sort, HashSet, HashMap, TreeSet, TreeMap, TreeList and pair classes are implemented │
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────┤
│★★☆│How to read input in Java — tutorial - Codeforces (http://codeforces.com/blog/entry/7018) │Learn how to read input faster. This is a must-read for those who intend to use  │
│ │ │Java for competitive programming │
│★★☆│How to sort arrays in Java and avoid TLE - Codeforces (http://codeforces.com/blog/entry/7108) │Some tips on how to avoid hitting the worst case of quick sort │
│★★☆│BigNum arithmetic in Java — Let's outperform BigInteger! - Codeforces │A basic but faster custom BigInteger class │
│ │ (http://codeforces.com/blog/entry/17235) │ │
│★★☆│EZ Collections, EZ Life (new Java library for contests) - Codeforces │A Java library for contests written by Alexey Dergunov (dalex). ArrayList,  │
│ │ (http://codeforces.com/blog/entry/14328) │ArrayDeque, Heap, Sort, HashSet, HashMap, TreeSet, TreeMap, TreeList and pair  │
│ │ │classes are implemented │
Miscellaneous
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Bit Twiddling Hacks (https://graphics.stanford.edu/~seander/bithacks.html) │A huge compiled list of bit manipulation tricks. │
│★★★│Comparing Floating Point Numbers, 2012 Edition - Random ASCII │Everything you need to know about floating point numbers. A must read especially for geometry topics.│
│ │ (https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/) │ │
│★★☆│Object-Oriented C Style Languages: C++, Objective-C, Java, C# - a side-by-side reference sheet │A detailed side-by-side reference sheet for common syntaxes. │
│ │ (http://hyperpolyglot.org/cpp) │ │
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Bit Twiddling Hacks (https://graphics.stanford.edu/~seander/bithacks.html) │A huge compiled list of bit manipulation tricks. │
│★★★│Comparing Floating Point Numbers, 2012 Edition - Random ASCII  │Everything you need to know about floating point numbers. A must read especially for geometry │
│ │(https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-editio│topics. │
│ │n/) │ │
│★★☆│Object-Oriented C Style Languages: C++, Objective-C, Java, C# - a side-by-side reference  │A detailed side-by-side reference sheet for common syntaxes. │
│ │sheet (http://hyperpolyglot.org/cpp) │ │
Tools
@@ -394,75 +439,83 @@
IDEs
│ ☆ │ Name │ Platform │ Description │
├───┼──────────────────────────────────────────┼─────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Vim (https://www.vim.org/download.php) │CLI /  │Vim is one of the most popular text editors among advanced programmers. It allows text-editing to be done very efficiently with solely  │
│ │ │Cross-Platform │keystrokes. Vim is also highly configurable, extensible and integrates with shells (command lines) really well. The only setback about Vim is  │
│ │ │ │that it has a high learning curve for beginners. │
│★★★│Emacs  │CLI /  │Emacs is another popular text editor (or development environment to be more precise). The debate on "Vim vs. Emacs" is constantly brought up due│
│ │(https://www.gnu.org/software/emacs/downlo│Cross-Platform │to their popularity. Basically Emacs is more than just a text editor. It has plugins like file managers, web browsers, mail clients and news  │
│ │ad.html) │ │clients that allows users to performs these tasks directly inside Emacs. Emacs is "heavier" because of this, but it arguably has a relatively  │
│ │ │ │easier learning curve for beginners. │
│★★★│Far Manager  │Hybrid / Windows │Far Manager is the most widely-used editor in the RU/CIS competitive programming community. It's actually a file manager in its bare bones, but │
│ │(https://www.farmanager.com/download.php?l│ │you can install FarColorer (http://colorer.sourceforge.net/farplugin.html) - a syntax highlighter plugin to program on it. Properly configured, │
│ │=en) │ │Far Manager allows you to navigate between files very efficiently while writing your codes. │
│★★★│Code::Blocks │GUI /  │Code::Blocks is the go-to IDE for C/C++. It's a full-fledged, versatile IDE with numerous great features. Code::Blocks is usually provided along│
│ │ (http://codeblocks.org/downloads) │Cross-Platform │with Vim in programming contests. │
│★★★│IntelliJ IDEA  │GUI /  │IntelliJ IDEA is certainly one of the best IDEs for Java. It's used by most competitive programmers who use Java as their main language. Be sure│
│ │(https://www.jetbrains.com/idea/#chooseYou│Cross-Platform │to check out CHelper (https://plugins.jetbrains.com/plugin/7091-chelper), a very handy plugin written for programming contests. │
│ │rEdition) │ │ │
│★★☆│Sublime Text │GUI /  │Sublime Text is an extraordinary text editor. Packed with powerful and innovative features like Multiple Carets, Minimaps and Command Palletes, │
│ │ (https://www.sublimetext.com/3) │Cross-Platform │it attracts a strong and engaging community. Sublime Text is highly extensible, so be sure to have Package Control (https://packagecontrol.io/) │
│ │ │ │installed and explore perhaps one of the largest catalogue of plugins! │
│★★☆│Eclipse │GUI /  │Eclipse is another good IDE for Java. It's an okay alternative to Intellij IDEA (A tad inferior to IDEA by today's standards). Sometimes  │
│ │ (https://www.eclipse.org/downloads/) │Cross-Platform │contests only provide Eclipse for some reason, so this might be a good incentive to try and use Eclipse. │
│★★☆│CLion  │GUI /  │CLion, produced by JetBrains - the same company who made Intellij IDEA, is a powerful IDE for C++. Free educational licenses are available OR  │
│ │(https://www.jetbrains.com/clion/download/│Cross-Platform │you can try out their EAP (Early Access Program) (https://confluence.jetbrains.com/display/CLION/Early+Access+Program) which is still free as of│
│ │) │ │Apr, 2018. You may want to turn off its code inspection feature as it will cause quite a bit of lag. │
│★☆☆│Other IDEs │Mixed │Visual Studio (https://visualstudio.microsoft.com/vs/community/) is the IDE to use in case you want to code in C#. ... Both Atom  │
│ │ │ │(https://atom.io/) and Visual Studio Code (https://code.visualstudio.com/) are built with Electron (written in JavaScript) and therefore  │
│ │ │ │somewhat resource-hogging. ... CodeLite (https://codelite.org/) is a newly rising IDE. Beware that the load-up and project-creation times can be│
│ │ │ │extraordinary. │
│ ☆ │ Name │ Platform │ Description │
├───┼──────────────────────────────────────────┼─────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│Vim (https://www.vim.org/download.php) │CLI /  │Vim is one of the most popular text editors among advanced programmers. It allows text-editing to be done very efficiently  │
│ │ │Cross-Platform │with solely keystrokes. Vim is also highly configurable, extensible and integrates with shells (command lines) really well. │
│ │ │ │The only setback about Vim is that it has a high learning curve for beginners. │
│★★★│Emacs  │CLI /  │Emacs is another popular text editor (or development environment to be more precise). The debate on "Vim vs. Emacs" is  │
│ │(https://www.gnu.org/software/emacs/downlo│Cross-Platform │constantly brought up due to their popularity. Basically Emacs is more than just a text editor. It has plugins like file  │
│ │ad.html) │ │managers, web browsers, mail clients and news clients that allows users to performs these tasks directly inside Emacs. Emacs│
│ │ │ │is "heavier" because of this, but it arguably has a relatively easier learning curve for beginners. │
│★★★│Far Manager  │Hybrid / Windows │Far Manager is the most widely-used editor in the RU/CIS competitive programming community. It's actually a file manager in │
│ │(https://www.farmanager.com/download.php?l│ │its bare bones, but you can install FarColorer (http://colorer.sourceforge.net/farplugin.html) - a syntax highlighter plugin│
│ │=en) │ │to program on it. Properly configured, Far Manager allows you to navigate between files very efficiently while writing your │
│ │ │ │codes. │
│★★★│Code::Blocks │GUI /  │Code::Blocks is the go-to IDE for C/C++. It's a full-fledged, versatile IDE with numerous great features. Code::Blocks is  │
│ │ (http://codeblocks.org/downloads) │Cross-Platform │usually provided along with Vim in programming contests. │
│★★★│IntelliJ IDEA  │GUI /  │IntelliJ IDEA is certainly one of the best IDEs for Java. It's used by most competitive programmers who use Java as their  │
│ │(https://www.jetbrains.com/idea/#chooseYou│Cross-Platform │main language. Be sure to check out CHelper (https://plugins.jetbrains.com/plugin/7091-chelper), a very handy plugin written│
│ │rEdition) │ │for programming contests. │
│★★☆│Sublime Text │GUI /  │Sublime Text is an extraordinary text editor. Packed with powerful and innovative features like Multiple Carets, Minimaps  │
│ │ (https://www.sublimetext.com/3) │Cross-Platform │and Command Palletes, it attracts a strong and engaging community. Sublime Text is highly extensible, so be sure to have  │
│ │ │ │Package Control (https://packagecontrol.io/) installed and explore perhaps one of the largest catalogue of plugins! │
│★★☆│Eclipse │GUI /  │Eclipse is another good IDE for Java. It's an okay alternative to Intellij IDEA (A tad inferior to IDEA by today's  │
│ │ (https://www.eclipse.org/downloads/) │Cross-Platform │standards). Sometimes contests only provide Eclipse for some reason, so this might be a good incentive to try and use  │
│ │ │ │Eclipse. │
│★★☆│CLion  │GUI /  │CLion, produced by JetBrains - the same company who made Intellij IDEA, is a powerful IDE for C++. Free educational licenses│
│ │(https://www.jetbrains.com/clion/download/│Cross-Platform │are available OR you can try out their EAP (Early Access Program)  │
│ │) │ │(https://confluence.jetbrains.com/display/CLION/Early+Access+Program) which is still free as of Apr, 2018. You may want to  │
│ │ │ │turn off its code inspection feature as it will cause quite a bit of lag. │
│★☆☆│Other IDEs │Mixed │Visual Studio (https://visualstudio.microsoft.com/vs/community/) is the IDE to use in case you want to code in C#. ... Both │
│ │ │ │Atom (https://atom.io/) and Visual Studio Code (https://code.visualstudio.com/) are built with Electron (written in  │
│ │ │ │JavaScript) and therefore somewhat resource-hogging. ... CodeLite (https://codelite.org/) is a newly rising IDE. Beware that│
│ │ │ │the load-up and project-creation times can be extraordinary. │
Personal use
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│VisuAlgo (https://visualgo.net/en) │A website featuring a large collection of visualization tools for algorithms and data structures. │
│★★★│General Practice Helpers: ... CHelper  │Great tools that parse contests, inline library codes and provide testing frameworks. They save you from spending your precious  │
│ │(https://plugins.jetbrains.com/plugin/7091-chelper) (IntelliJ IDEA) (manual│time on switching windows and copy-pasting back and forth. │
│ │(http://codeforces.com/blog/entry/3273)) ... caide  │ │
│ │(https://github.com/slycelote/caide) (Visual Studio, CodeLite, standalone  │ │
│ │command line app) ... JHelper (http://codeforces.com/blog/entry/13369)  │ │
│ │(AppCode, CLion) online-judge-tools  │ │
│ │(https://github.com/kmyk/online-judge-tools) (Stand alone CLI tool, It is  │ │
│ │actively maintained.) │ │
│★★☆│Codeforces Parsers: ... Codeforces Parser  │These tools parse Codeforces contest problems and help run sample tests. │
│ │(https://github.com/johnathan79717/codeforces-parser) ... GoCF  │ │
│ │(https://github.com/sukeesh/GoCF) ... cfparser  │ │
│ │(https://github.com/gnull/cfparser) (emacs) cfparser  │ │
│ │(https://github.com/ikatanic/cfparser) (cli) │ │
│★★★│The On-Line Encyclopedia of Integer Sequences (OEIS) (https://oeis.org/) │A stunning encyclopedia with a database of countless integer sequences. It also features a powerful search engine. Sometimes a  │
│ │ │seemingly difficult combinatorics problem could be equivalent to a simple or studied integer sequence. │
│★★│Syntax Highlighters: ... tohtml.com (https://tohtml.com/) ... markup.su  │Very handy for creating slides or team notebooks with pretty, formatted code snippets. Just copy the highlighted code snippets  │
│ │(http://markup.su/highlighter/) ... hilite.me (http://hilite.me/) │and paste them in your favorite WYSIWYG (What-You-See-Is-What-You-Get) editor! │
│★★☆│Code Sharing: ... Ideone.com (https://ideone.com/) ... Pastebin.com  │These tools generate semi-permanent pages for code sharing. Very useful especially when you're trying to get someone else to look│
│ │(https://pastebin.com/) ... Ubuntu Pastebin (https://paste.ubuntu.com/) │into your code. │
│★★☆│Ineffable (http://codeforces.com/blog/entry/19083) │A simple command-line grader for local grading. │
│★★☆│uDebug (https://www.udebug.com/) │A platform that provides expected outputs for user-specified inputs to problems on the UVa Online Judge. Some problems also  │
│ │ │provide additional test cases for debugging. │
│ ☆ │ Name │ Description │
├───┼───────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│VisuAlgo (https://visualgo.net/en) │A website featuring a large collection of visualization tools for algorithms and data structures. │
│★★★│General Practice Helpers: ... CHelper  │Great tools that parse contests, inline library codes and provide testing frameworks. They save you from spending your precious  │
│ │(https://plugins.jetbrains.com/plugin/7091-chelper)  │time on switching windows and copy-pasting back and forth. │
│ │(IntelliJ IDEA) (manual  │ │
│ │(http://codeforces.com/blog/entry/3273)) ... caide  │ │
│ │(https://github.com/slycelote/caide) (Visual Studio,  │ │
│ │CodeLite, standalone command line app) ... JHelper  │ │
│ │(http://codeforces.com/blog/entry/13369) (AppCode,  │ │
│ │CLion) online-judge-tools  │ │
│ │(https://github.com/kmyk/online-judge-tools) (Stand  │ │
│ │alone CLI tool, It is actively maintained.) │ │
│★★☆│Codeforces Parsers: ... Codeforces Parser  │These tools parse Codeforces contest problems and help run sample tests. │
│ │(https://github.com/johnathan79717/codeforces-parser)  │ │
│ │... GoCF (https://github.com/sukeesh/GoCF) ... cfparser│ │
│ │(https://github.com/gnull/cfparser) (emacs) cfparser  │ │
│ │(https://github.com/ikatanic/cfparser) (cli) │ │
│★★│The On-Line Encyclopedia of Integer Sequences (OEIS) │A stunning encyclopedia with a database of countless integer sequences. It also features a powerful search engine. Sometimes a  │
│ │ (https://oeis.org/) │seemingly difficult combinatorics problem could be equivalent to a simple or studied integer sequence. │
│★★☆│Syntax Highlighters: ... tohtml.com  │Very handy for creating slides or team notebooks with pretty, formatted code snippets. Just copy the highlighted code snippets  │
│ │(https://tohtml.com/) ... markup.su  │and paste them in your favorite WYSIWYG (What-You-See-Is-What-You-Get) editor! │
│ │(http://markup.su/highlighter/) ... hilite.me  │ │
│ │(http://hilite.me/) │ │
│★★☆│Code Sharing: ... Ideone.com (https://ideone.com/) ... │These tools generate semi-permanent pages for code sharing. Very useful especially when you're trying to get someone else to look│
│ │Pastebin.com (https://pastebin.com/) ... Ubuntu  │into your code. │
│ │Pastebin (https://paste.ubuntu.com/) │ │
│★★☆│Ineffable (http://codeforces.com/blog/entry/19083) │A simple command-line grader for local grading. │
│★★☆│uDebug (https://www.udebug.com/) │A platform that provides expected outputs for user-specified inputs to problems on the UVa Online Judge. Some problems also  │
│ │ │provide additional test cases for debugging. │
Contest Preparation
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│polygon (https://polygon.codeforces.com/) │polygon provides a platform and a rich set of tools for professional contest preparation. ... An example: Validators with testlib.h - Codeforces  │
│ │ │(http://codeforces.com/blog/entry/18426) │
│★★☆│Graph Editor (https://csacademy.com/app/graph_editor/)│A fantastic tool to create and visualize graphs. │
│★★☆│tcframe (https://github.com/ia-toki/tcframe) │A C++ framework for generating test cases of competitive programming problems. │
│★★★│Virtual Judge (vjudge) (http://vjudge.net) │Virtual Judge (vjudge) allows users to create virtual contests with problems from notable problem archives. │
│★★☆│BNU Online Judge (https://www.bnuoj.com/v3/) │BNU Online Judge also allows users to create virtual contests. │
│★★☆│Kattis (https://open.kattis.com/) │Kattis assists in contest preparation (E-mail them for assistance). │
│ ☆ │ Name │ Description │
├───┼──────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│★★★│polygon (https://polygon.codeforces.com/) │polygon provides a platform and a rich set of tools for professional contest preparation. ... An example: Validators with  │
│ │ │testlib.h - Codeforces (http://codeforces.com/blog/entry/18426) │
│★★☆│Graph Editor (https://csacademy.com/app/graph_editor/)│A fantastic tool to create and visualize graphs. │
│★★☆│tcframe (https://github.com/ia-toki/tcframe) │A C++ framework for generating test cases of competitive programming problems. │
│★★★│Virtual Judge (vjudge) (http://vjudge.net) │Virtual Judge (vjudge) allows users to create virtual contests with problems from notable problem archives. │
│★★☆│BNU Online Judge (https://www.bnuoj.com/v3/) │BNU Online Judge also allows users to create virtual contests. │
│★★☆│Kattis (https://open.kattis.com/) │Kattis assists in contest preparation (E-mail them for assistance). │
Community
@@ -488,59 +541,60 @@
Youtube and Livestreams
│ Name (Handle) │ Link │
├──────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│Petr Mitrichev (Petr) │Youtube (https://www.youtube.com/channel/UCdmeooqNtlN7IhrKlq7hGDA) │
│Gate Lectures by Ravindrababu Ravula │Youtube (https://www.youtube.com/channel/UCJjC1hn78yZqTf0vdTC6wAQ) │
│Mostafa Saad Ibrahim (mostafa.saad.fci) │Competitive Programming Youtube (Arabic Speech-English Text) (https://www.youtube.com/user/nobody123497) │
│Tushar Roy │Youtube (https://www.youtube.com/user/tusharroy2525), with many tutorial videos. │
│GeeksforGeeks │Youtube (https://www.youtube.com/channel/UC0RhatS1pyxInC00YKjjBqQ) │
│Algorithms Live! │Youtube (https://www.youtube.com/channel/UCBLr7ISa_YDy5qeATupf26w) │
│CodeChef │Youtube (https://www.youtube.com/user/codechefofficial/featured) │
│HackerRank │Youtube (https://www.youtube.com/channel/UCOf7UPMHBjAavgD0Qw5q5ww/videos) │
│IDeserve │Youtube (https://www.youtube.com/channel/UCMNkvKnD3mo3Jj9eTwJllWw/featured) │
│code_report │Youtube (https://www.youtube.com/channel/UC1kBxkk2bcG78YBX7LMl9pQ), with contest updates and problem tutorials of HackerRank, LeetCode, Topcoder and Codeforces. │
│"Sothe" the Algorithm Wolf │Youtube (https://www.youtube.com/channel/UCwsapfci2p1oDVO4Q2sJOQw) │
│Egor Kulikov (Egor) │Youtube (https://www.youtube.com/channel/UCjlLfxSPkYluCDetlwbLpjQ) │
│Adam Bardashevich (subscriber) │Youtube (https://www.youtube.com/channel/UCc4jWVeWjUfpUo8z4PHfopw) │
│Bohdan Pryshchenko (I_love_Tanya_Romanova)│Twitch (https://www.twitch.tv/lebron_stream), Youtube (https://www.youtube.com/channel/UCWqqnonyL7aVeUYl5Yp8TrQ) │
│Vladimir Smykalov (enot.1.10) │Twitch (https://www.twitch.tv/enot110), Youtube (https://www.youtube.com/channel/UCWEVsnIXiD5mgWM0LFwZBzA) │
│Aleksandar Abas (Alex7) │Youtube (https://www.youtube.com/channel/UCQ5k0-BMFhfvfJQik1r5ZVw) │
│Mikhail Tikhomirov (Endagorion) │Youtube (https://www.youtube.com/user/Endagorion/) │
│Kamil Debowski (Errichto) │Youtube (https://www.youtube.com/channel/UCBr_Fu6q9iHYQCh13jmpbrg) │
│David Harmeyer (SecondThread) │Youtube (https://www.youtube.com/channel/UCXbCohpE9IoVQUD2Ifg1d1g), Editorials, High qualtiy lectures(advanced topics) │
│mycodeschool │Youtube (https://www.youtube.com/user/mycodeschool), High quality videos on basic programming, data structures and algorithms │
│William Lin (tmwilliamlin168) │Youtube (https://www.youtube.com/channel/UCKuDLsO0Wwef53qdHPjbU2Q), Mostly streams, tips but inspiring and sometimes insightful │
│CodeNCode (kazama460) │Youtube (https://www.youtube.com/channel/UC0zvY3yIBQTrSutsV-4yscQ), Short lectures covering various CP related topics like Graph Theory, Number theory, DP, Advanced  │
│ │Data structures. │
│Colin Galen (galen_colin) │Youtube (https://www.youtube.com/channel/UCpvS3EykHW--l0ogUhMEjEw), Editorials, screencasts │
│William Feset │Youtube (https://www.youtube.com/user/purpongie), High quality videos covering almost all data structures, algorithms │
│ Name (Handle) │ Link │
├──────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│Petr Mitrichev (Petr) │Youtube (https://www.youtube.com/channel/UCdmeooqNtlN7IhrKlq7hGDA) │
│Gate Lectures by Ravindrababu Ravula │Youtube (https://www.youtube.com/channel/UCJjC1hn78yZqTf0vdTC6wAQ) │
│Mostafa Saad Ibrahim (mostafa.saad.fci) │Competitive Programming Youtube (Arabic Speech-English Text) (https://www.youtube.com/user/nobody123497) │
│Tushar Roy │Youtube (https://www.youtube.com/user/tusharroy2525), with many tutorial videos. │
│GeeksforGeeks │Youtube (https://www.youtube.com/channel/UC0RhatS1pyxInC00YKjjBqQ) │
│Algorithms Live! │Youtube (https://www.youtube.com/channel/UCBLr7ISa_YDy5qeATupf26w) │
│CodeChef │Youtube (https://www.youtube.com/user/codechefofficial/featured) │
│HackerRank │Youtube (https://www.youtube.com/channel/UCOf7UPMHBjAavgD0Qw5q5ww/videos) │
│IDeserve │Youtube (https://www.youtube.com/channel/UCMNkvKnD3mo3Jj9eTwJllWw/featured) │
│code_report │Youtube (https://www.youtube.com/channel/UC1kBxkk2bcG78YBX7LMl9pQ), with contest updates and problem tutorials of HackerRank, LeetCode, Topcoder  │
│ │and Codeforces. │
│"Sothe" the Algorithm Wolf │Youtube (https://www.youtube.com/channel/UCwsapfci2p1oDVO4Q2sJOQw) │
│Egor Kulikov (Egor) │Youtube (https://www.youtube.com/channel/UCjlLfxSPkYluCDetlwbLpjQ) │
│Adam Bardashevich (subscriber) │Youtube (https://www.youtube.com/channel/UCc4jWVeWjUfpUo8z4PHfopw) │
│Bohdan Pryshchenko (I_love_Tanya_Romanova)│Twitch (https://www.twitch.tv/lebron_stream), Youtube (https://www.youtube.com/channel/UCWqqnonyL7aVeUYl5Yp8TrQ) │
│Vladimir Smykalov (enot.1.10) │Twitch (https://www.twitch.tv/enot110), Youtube (https://www.youtube.com/channel/UCWEVsnIXiD5mgWM0LFwZBzA) │
│Aleksandar Abas (Alex7) │Youtube (https://www.youtube.com/channel/UCQ5k0-BMFhfvfJQik1r5ZVw) │
│Mikhail Tikhomirov (Endagorion) │Youtube (https://www.youtube.com/user/Endagorion/) │
│Kamil Debowski (Errichto) │Youtube (https://www.youtube.com/channel/UCBr_Fu6q9iHYQCh13jmpbrg) │
│David Harmeyer (SecondThread) │Youtube (https://www.youtube.com/channel/UCXbCohpE9IoVQUD2Ifg1d1g), Editorials, High qualtiy lectures(advanced topics) │
│mycodeschool │Youtube (https://www.youtube.com/user/mycodeschool), High quality videos on basic programming, data structures and algorithms │
│William Lin (tmwilliamlin168) │Youtube (https://www.youtube.com/channel/UCKuDLsO0Wwef53qdHPjbU2Q), Mostly streams, tips but inspiring and sometimes insightful │
│CodeNCode (kazama460) │Youtube (https://www.youtube.com/channel/UC0zvY3yIBQTrSutsV-4yscQ), Short lectures covering various CP related topics like Graph Theory, Number  │
│ │theory, DP, Advanced Data structures. │
│Colin Galen (galen_colin) │Youtube (https://www.youtube.com/channel/UCpvS3EykHW--l0ogUhMEjEw), Editorials, screencasts │
│William Feset │Youtube (https://www.youtube.com/user/purpongie), High quality videos covering almost all data structures, algorithms │
Quora
▐ Visit Competitive Programming - Quora (https://www.quora.com/topic/Competitive-Programming) (Top 10 Most Viewed Writers (https://www.quora.com/topic/Competitive-Programming/writers)).
│ Important Community Figures │ Description │
├──────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│Bill Poucher (https://www.quora.com/profile/Bill-Poucher) │Executive Director of ACM-ICPC (https://icpc.baylor.edu). CS Professor at Baylor University. │
│Michal Forišek (misof) (https://www.quora.com/profile/Michal-Fori%C5%A1ek)│Organizer of IPSC (https://ipsc.ksp.sk) and IOI (https://ioinformatics.org/). CS Teacher at Comenius University in Slovakia. Algorithm│
│ │and CS Education Researcher. Former highly-rated competitive programmer. │
│Ahmed Aly (ahmed_aly) (https://www.quora.com/profile/Ahmed-Aly) │Founder of A2OJ (https://www.quora.com/profile/Ahmed-Aly). HackerRank (https://www.hackerrank.com) Lead Software Engineer. Former  │
│ │member of the Google Code Jam (https://code.google.com/codejam/) team. │
│ Important Community Figures │ Description │
├────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│Bill Poucher (https://www.quora.com/profile/Bill-Poucher) │Executive Director of ACM-ICPC (https://icpc.baylor.edu). CS Professor at Baylor University. │
│Michal Forišek (misof) │Organizer of IPSC (https://ipsc.ksp.sk) and IOI (https://ioinformatics.org/). CS Teacher at Comenius University in Slovakia.  │
│ (https://www.quora.com/profile/Michal-Fori%C5%A1ek) │Algorithm and CS Education Researcher. Former highly-rated competitive programmer. │
│Ahmed Aly (ahmed_aly) │Founder of A2OJ (https://www.quora.com/profile/Ahmed-Aly). HackerRank (https://www.hackerrank.com) Lead Software Engineer.  │
│ (https://www.quora.com/profile/Ahmed-Aly) │Former member of the Google Code Jam (https://code.google.com/codejam/) team. │
│ Competitive Programmers │  │  │
├─────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────┤
│Thanh Trung Nguyen (I_love_Hoang_Yen) │Brian Bi (bbi5291) (https://www.quora.com/profile/Brian-Bi)│Jonathan Paulson (jonathanpaulson) │
│ (https://www.quora.com/profile/Thanh-Trung-Nguyen) │ │ (https://www.quora.com/profile/Jonathan-Paulson) │
│Miguel Oliveira (mogers) │Egor Suvorov (yeputons) │Michal Danilák (Mimino) (https://www.quora.com/profile/Michal-Danil%C3%A1k) │
│ (https://www.quora.com/profile/Miguel-Oliveira-2) │ (https://www.quora.com/profile/Egor-Suvorov) │ │
│Bohdan Pryshchenko (I_love_Tanya_Romanova) │Vladimir Novakovski (vnovakovski) │Nick Wu (xiaowuc1) (https://www.quora.com/profile/Nick-Wu-4) │
│ (https://www.quora.com/profile/Bohdan-Pryshchenko) │ (https://www.quora.com/profile/Vladimir-Novakovski) │ │
│Cosmin Negruseri (https://www.quora.com/profile/Cosmin-Negruseri) │Lalit Kundu (darkshadows) │Ashish Kedia (ashish1294) (https://www.quora.com/profile/Ashish-Kedia) │
│ │ (https://www.quora.com/profile/Lalit-Kundu) │ │
│Johnny Ho (random.johnnyh) (https://www.quora.com/profile/Johnny-Ho) │Joshua Pan (lonerz) │Anudeep Nekkanti (anudeep2011) (https://www.quora.com/profile/Anudeep-Nekkanti)│
│ │ (https://www.quora.com/profile/Joshua-Pan-1) │ │
│Steven Hao (stevenkplus) (https://www.quora.com/profile/Steven-Hao) │Raziman T.V. (razimantv) │ │
│ │ (https://www.quora.com/profile/Raziman-T-V) │ │
│ Competitive Programmers │  │  │
├─────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────┤
│Thanh Trung Nguyen (I_love_Hoang_Yen) │Brian Bi (bbi5291) (https://www.quora.com/profile/Brian-Bi)│Jonathan Paulson (jonathanpaulson) │
│ (https://www.quora.com/profile/Thanh-Trung-Nguyen) │ │ (https://www.quora.com/profile/Jonathan-Paulson) │
│Miguel Oliveira (mogers) │Egor Suvorov (yeputons) │Michal Danilák (Mimino) │
│ (https://www.quora.com/profile/Miguel-Oliveira-2) │ (https://www.quora.com/profile/Egor-Suvorov) │ (https://www.quora.com/profile/Michal-Danil%C3%A1k) │
│Bohdan Pryshchenko (I_love_Tanya_Romanova) │Vladimir Novakovski (vnovakovski) │Nick Wu (xiaowuc1) │
│ (https://www.quora.com/profile/Bohdan-Pryshchenko) │ (https://www.quora.com/profile/Vladimir-Novakovski) │ (https://www.quora.com/profile/Nick-Wu-4) │
│Cosmin Negruseri (https://www.quora.com/profile/Cosmin-Negruseri) │Lalit Kundu (darkshadows) │Ashish Kedia (ashish1294) │
│ │ (https://www.quora.com/profile/Lalit-Kundu) │ (https://www.quora.com/profile/Ashish-Kedia) │
│Johnny Ho (random.johnnyh) (https://www.quora.com/profile/Johnny-Ho) │Joshua Pan (lonerz) │Anudeep Nekkanti (anudeep2011) │
│ │ (https://www.quora.com/profile/Joshua-Pan-1) │ (https://www.quora.com/profile/Anudeep-Nekkanti) │
│Steven Hao (stevenkplus) (https://www.quora.com/profile/Steven-Hao) │Raziman T.V. (razimantv) │ │
│ │ (https://www.quora.com/profile/Raziman-T-V) │ │
Other Awesome Resources
@@ -560,15 +614,16 @@
FAQs
▐ Fine answers to frequently-asked questions 
│ Question │
├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│How do I start competitive programming? - Quora (https://www.quora.com/How-do-I-start-competitive-programming-5) │
│How can I become good at competitive programming? - Quora  │
│(https://www.quora.com/How-can-I-become-good-at-competitive-programming-Are-there-any-courses-that-will-take-me-one-step-forward-before-I-start-doing-SPOJ-or-TopCoder-problems) ... What is the best strategy to│
│improve my skills in competitive programming in 2-3 months? - Quora (https://www.quora.com/What-is-the-best-strategy-to-improve-my-skills-in-competitive-programming-in-2-3-months) ... What is a good 6 month  │
│plan to start and progress through competitive programming? - Quora (https://www.quora.com/What-is-a-good-6-month-plan-to-start-and-progress-through-competitive-programming) │
│How is competitive programming different from real-life programming? - Quora (https://www.quora.com/How-is-competitive-programming-different-from-real-life-programming) │
│What have you gained from competitive programming? - Quora (https://www.quora.com/What-have-you-gained-from-competitive-programming) │
│ Question │
├─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│How do I start competitive programming? - Quora (https://www.quora.com/How-do-I-start-competitive-programming-5) │
│How can I become good at competitive programming? - Quora  │
│(https://www.quora.com/How-can-I-become-good-at-competitive-programming-Are-there-any-courses-that-will-take-me-one-step-forward-before-I-start-doing-SPOJ-or-TopCoder-problems) ... What is │
│the best strategy to improve my skills in competitive programming in 2-3 months? - Quora  │
│(https://www.quora.com/What-is-the-best-strategy-to-improve-my-skills-in-competitive-programming-in-2-3-months) ... What is a good 6 month plan to start and progress through competitive  │
│programming? - Quora (https://www.quora.com/What-is-a-good-6-month-plan-to-start-and-progress-through-competitive-programming) │
│How is competitive programming different from real-life programming? - Quora (https://www.quora.com/How-is-competitive-programming-different-from-real-life-programming) │
│What have you gained from competitive programming? - Quora (https://www.quora.com/What-have-you-gained-from-competitive-programming) │
Awesome Lists
▐ Relevant awesome lists
@@ -588,12 +643,13 @@
│Community-curated C++ Resources│Hackr.io (https://hackr.io/tutorials/learn-c-plus-plus) │
Interview Questions
│ Name │ Description │
├───────────────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│CareerCup (https://www.careercup.com) │The most popular website for software engineering interview preparation. │
│InterviewBit (https://www.interviewbit.com) │Features intriguing and refreshing game-play designs which are designed to invoke one's interest in practicing.│
│Awesome Interviews (https://github.com/MaximAbramchuck/awesome-interview-questions)│A curated list of awesome interview questions │
│LeetCode (https://leetcode.com) │Well-organized website for software engineering interview preparation with best explanined solutions. │
│ Name │ Description │
├───────────────────────────────────────────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│CareerCup (https://www.careercup.com) │The most popular website for software engineering interview preparation. │
│InterviewBit (https://www.interviewbit.com) │Features intriguing and refreshing game-play designs which are designed to invoke one's interest in  │
│ │practicing. │
│Awesome Interviews (https://github.com/MaximAbramchuck/awesome-interview-questions)│A curated list of awesome interview questions │
│LeetCode (https://leetcode.com) │Well-organized website for software engineering interview preparation with best explanined solutions. │
License