/competitive-programming-resources

A compilation of competitive programming resources, curated by the Algorithms and Coding Club, IIT Delhi

Primary LanguageC++MIT LicenseMIT

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

A comprehensive series of lectures, practice mashups and contests on important topics organised to help you learn and master competitive programming

We answer queries like

  • What is CP?
  • How should one start their journey?
  • Which books to follow?
  • Is tourist really a god?

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

This book covers most topics to start with in competitive programming.

This is a classic university text which covers data structures and algorithms in some detail.

This is an introduction to number theory used in competitive programming.

This book is a great resource to start out, and was originally meant for participants of the USA Computing Olympiad.

Problemsets

Topic wise comprehensive high quality problem set for learning algorithmic programming. Solutions

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.

Difficulty-wise problems with editorial video solutions too!

A series of challenging mathematical/computer programming problems to delve into unfamiliar areas and learn new concepts.

Curated problems according to codeforces rating, to help you level up.

Problems on data structures and algorithms, to practice important concepts for each topic.

Websites

Curated, high-quality competitive programming resources, with a complete guide at getting started with coding and getting better at competitive programming.

Provides descriptions of many algorithms and data structures especially popular in field of competitive programming

Official reference for C++, including all supported library features, functions, data structures.

YouTube

Errichto livestreams while solving contest problems and also has educational lectures. Also has a discord server with a thriving competitive programming community.

tmwilliamlin168 streams doing competitions like Google KickStart, FaceBook HackerCup and also while solving problemsets like CSES.

A weekly live talk show on various relevant algorithms in competitive programming. Also has a blog

Streams doing codeforces rounds, Google kickstart, Facebook HackerCup while periodically explaining algortihms/data structures relevant to competitive. Codes mostly in Java.

Discusses various algorithms relevant to various coding interviews and rounds.

Contests

Online Platforms for Competitive Programming

Other Annual Competions

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.

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!

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!

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.

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.