The ANCC Competitive Programming Guide
This repository is meant to be a compilation of useful resources for competitive programming, curated by the Algorithms and Coding Club, IIT Delhi.
Table of Contents
- ANNC Orientation Session
- IIT Delhi Codeforces Group Form
- ANCC Summer of Competitive Programming Sessions
- An Introduction to Competitive Programming
- Setting up C++ environment
- Resources
- Contests
ANCC Summer of Competitive Programming Sessions
A comprehensive series of lectures, practice mashups and contests on important topics organised to help you learn and master competitive programming
An Introduction to Competitive Programming
We answer queries like
- What is CP?
- How should one start their journey?
- Which books to follow?
- Is tourist really a god?
Setting up C++ environment
We have prepared a guide with easy steps to setup c++ development environment on Windows, macOS and Linux. So now you can get started quickly and smoothly without any fuss of searching around for tutorials or setup how-to’s!
Resources
Books
The Competitive Programmer’s Handbook
This book covers most topics to start with in competitive programming.
Introduction to Algorithms - CLRS
This is a classic university text which covers data structures and algorithms in some detail.
Elementary Number Theory - David Burton
This is an introduction to number theory used in competitive programming.
USACO Book
This book is a great resource to start out, and was originally meant for participants of the USA Computing Olympiad.
Problemsets
CSES
Topic wise comprehensive high quality problem set for learning algorithmic programming. Solutions
Codeforces Problemset
Problems from past contests. Try filtering by difficulty rating and topic tags! For hints and solutions, open the problem and scroll down to Contest materials
-> Tutorial
for editorial of that contest.
Codechef Problemset
Difficulty-wise problems with editorial video solutions too!
Project Euler
A series of challenging mathematical/computer programming problems to delve into unfamiliar areas and learn new concepts.
A2OJ Ladders
Curated problems according to codeforces rating, to help you level up.
LeetCode
Problems on data structures and algorithms, to practice important concepts for each topic.
Websites
USACO Guide
Curated, high-quality competitive programming resources, with a complete guide at getting started with coding and getting better at competitive programming.
Competitive Programming Algorithms
Provides descriptions of many algorithms and data structures especially popular in field of competitive programming
cppreference
Official reference for C++, including all supported library features, functions, data structures.
YouTube
Errichto
Errichto livestreams while solving contest problems and also has educational lectures. Also has a discord server with a thriving competitive programming community.
William Lin
tmwilliamlin168 streams doing competitions like Google KickStart, FaceBook HackerCup and also while solving problemsets like CSES.
Algorithms Live!
A weekly live talk show on various relevant algorithms in competitive programming. Also has a blog
SecondThread
Streams doing codeforces rounds, Google kickstart, Facebook HackerCup while periodically explaining algortihms/data structures relevant to competitive. Codes mostly in Java.
Stable Sort
Discusses various algorithms relevant to various coding interviews and rounds.
Contests
Online Platforms for Competitive Programming
Codeforces
CodeChef
AtCoder
Other Annual Competions
ACM-ICPC
The International Collegiate Programming Contest,, is among the most prestigious competitive programming competitions held throughout the year. The contest consists of a regional round and the world finals. Top ranking teams from each site get to participate in the world finals. The top team in the world finals takes home $15,000 along with the ICPC Gold medal.
Kickstart
Kick Start offers coders around the world the chance to develop and hone their programming skills through online-hosted competition rounds. 8 competitions are held in a year, with varying difficulty of problems. Make sure to check out their archives to see past problems and their detailed editorial solutions!
CodeJam
Competitors work their way through a series of online algorithmic puzzles to earn a spot at the World Finals, all for a chance to win the championship title and $15,000 USD!
HashCode
Hash Code is a team programming competition, during a four-hour-long contest, participants solve an optimization problem by Google in teams of two to four, in any language of their choice.
Facebook HackerCup
Apply problem-solving and algorithmic coding skills to advance through online rounds, win goodies and prizes, and have a chance to make it to the global finals and win the grand prize.