Your first time on this page? Allow me to give some explanations.
Awesome Competitive Programming
A curated list of awesome Competitive Programming, Algorithm and Data Structure resources
Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.
Thank you lnishan & contributors
View Topic on GitHub:
lnishan/awesome-competitive-programming
Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.
Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.
List of Lists
Syllabuses
Mostafa Saad Ibrahim | ~800 ordered problems for newcomers to be good up to Div2-D |
Tutorial Websites
This repository contains a subset of pointers to solutions with editorials and notes to my trainees (ACM ICPC, OJs, IOI, POI, CEOI, JOI, etc). For IOI/OI, I organized what I found on the web from official solutions and materials.
(English) | A tutorial website widely used and referenced in the Russian-speaking competitive programming community. Most of the articles of the original site have been translated into English, Google Translate works okay for the remaining ones. |
Open Courses
The repository contains the ENGLISH description files attached to the video series in my ARABIC algorithms channel.
Codechef's Indian Programming Camp 2016. 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. |
Bjarki Ágúst Guðmundsson (SuprDewd). These lectures feature neat slides and a nice list of problems to practice. |
Open Courses for Algorithms and Data Structures
List of awesome university courses for learning Computer Science!
Books
download (pdf). This book covers various topics relevant to competitive programming. |
Books for Algorithms
Books for Mathematics
download (pdf) (released under GNU Free Documentation License). |
Sites for Practice
Problem classifiers section). SPOJ also allows advanced users to organize contests under their own rules. |
Problem Classifiers
Mostafa Saad Ibrahim | ~800 ordered problems for newcomers to be good up to Div2-D |
Contest Calendars
DEPRECATED -> Checkout nishanthvijayan/CoderCalendar-Extensions
Sites for Questions
Camps and Trainings
Mostafa Saad Ibrahim | See the coaching details and people comments on its nature/quality.|
Implementations
C++ Implementation of Algorithms (aka. Spaghetti Source)
KTH Algorithm Competition Template Library (... eller KTHs AC-tillverkande lapp)
Stanford ACM-ICPC related materials
NUS ACM Team's Notebook for ACM ICPC World final 2016
CodeBook for Team BCW
Cheat sheet for ACM-ICPC. In memory of those good old days.
C/C++
Part 2 | An introductory tutorial on basic C++ STLs. |
What are some cool C++ tricks to use in a programming contest? - Quora | Plentiful C++ tricks for competitive programming. Note that some should be used with care. |
Java
Miscellaneous
IDEs
FarColorer - a syntax highlighter plugin to program on it. Properly configured, Far Manager allows you to navigate between files very efficiently while writing your codes. |
CHelper, a very handy plugin written for programming contests. |
Package Control installed and explore perhaps one of the largest catalogue of plugins! |
EAP (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. |
Personal use
Parse sample tests of Codeforces competitions, and generate tests automatically.
manual) ... caide (Visual Studio, CodeLite, standalone command line app) ... JHelper (AppCode, CLion) online-judge-tools (Stand alone CLI tool, It is actively maintained.) | Great tools that parse contests, inline library codes and provide testing frameworks. They save you from spending your precious time on switching windows and copy-pasting back and forth. |
Pastebin.com ... Ubuntu Pastebin | These tools generate semi-permanent pages for code sharing. Very useful especially when you're trying to get someone else to look into your code. |
Contest Preparation
Test cases generation framework for competitive programming problems
Blogs
Youtube and Livestreams
Quora
ACM-ICPC. CS Professor at Baylor University. |
A2OJ. HackerRank Lead Software Engineer. Former member of the Google Code Jam team. |
Articles
FAQs
Awesome Lists
A curated list of awesome places to learn and/or practice algorithms.
collection of projects and links about algorithm visualization
A curated list of awesome mathematics resources
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
A curated list of awesome frameworks, libraries and software for the Java programming language.
List of awesome university courses for learning Computer Science!
Freely available programming books
Interview Questions
A curated awesome list of lists of interview questions. Feel free to contribute!