Skip to content

alokshukla631/competitive-programming-guide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Competitive Programming: From Beginner to Expert

A complete, structured guide to competitive programming using C++. This repository takes you from writing your first solution to solving expert-level problems on Codeforces, CSES, and AtCoder.

Who Is This For?

  • You know basic programming but have never done competitive programming
  • You have tried CP but feel stuck and don't know what to learn next
  • You want a clear, step-by-step path instead of random practice

What's Inside?

  • 100 fully solved problems with clean C++ code and plain-English explanations
  • 200+ practice problems handpicked from CSES, Codeforces, and AtCoder
  • 10 topic guides that teach you the concepts before throwing problems at you
  • A structured roadmap so you always know what to do next

How to Use This Guide

  1. Start with C++ Basics for CP if you need a refresher
  2. Follow the Roadmap for the recommended learning order
  3. For each topic, read the concept guide first, then solve the problems
  4. Try every solved problem yourself before reading the solution
  5. After solved problems, work through the practice problems on your own

Topics

# Topic Solved Practice Difficulty
1 Implementation & Ad-Hoc 12 20 Beginner
2 Sorting & Searching 12 22 Beginner-Intermediate
3 Greedy Algorithms 8 18 Beginner-Intermediate
4 Number Theory & Math 10 20 Intermediate
5 Dynamic Programming 15 30 Intermediate-Advanced
6 Graph Algorithms 15 30 Intermediate-Advanced
7 Tree Algorithms 8 20 Advanced
8 Range Queries 8 20 Advanced
9 String Algorithms 6 15 Advanced
10 Advanced Topics 6 15 Expert

Total: 100 solved + 210 practice = 310 problems

The Golden Rules

  1. Never look at the solution before trying for at least 30 minutes. Struggling is where the learning happens.
  2. If you can't solve it in 2 hours, read the hint/editorial. Don't waste entire days on one problem.
  3. After reading a solution, close it and code it yourself from scratch. Copy-pasting teaches nothing.
  4. Upsolve every contest. After each contest, solve the first problem you couldn't get. This is the fastest way to improve.
  5. Track your mistakes. Keep a simple note of problems you got wrong and why. Review it weekly.

Recommended Platforms

Platform Best For Link
CSES Standard algorithm problems cses.fi/problemset
Codeforces Live contests + huge problem archive codeforces.com
AtCoder Clean problems, great for beginners atcoder.jp

Expected Timeline

Your Level Target Rating Estimated Time
Complete beginner Codeforces Pupil (1200) 3-6 months
Pupil Specialist (1400) 2-4 months
Specialist Expert (1600) 4-12 months

These estimates assume 2-3 hours of daily practice and regular contest participation.

Additional Resources

See resources.md for books, video channels, external sheets, and other helpful links.


Built with the goal of making competitive programming accessible to everyone. Good luck on your journey.

About

A complete guide to competitive programming in C++. 100 solved problems + 210 practice problems covering 10 topics from beginner to expert.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages