Competitive Programming Mastery Roadmap POPULAR

Competitive programming (CP) is a challenging and rewarding pursuit for those who enjoy problem-solving and coding. This roadmap is designed to take you from the basics to advanced algorithmic mastery.

Phase 0: The Mindset (Free Time Content)

Before diving into code, understand the philosophy and strategy behind top-tier competitive programmers.

Phase 1: Fundamentals & Language Selection

The first step is to master a programming language. C++ is highly recommended due to its speed and extensive Standard Template Library (STL).

1.1 Language Basics

1.2 Standard Libraries

Mastering these is essential for efficient coding. Instead of writing common data structures from scratch, you use these built-in libraries:

  • C++: Learn the STL Library (Vectors, Sets, Maps, Stacks). STL Guide
  • Java: Learn the Collections Library. [Collections Guide]

Phase 2: Basic Problem Solving

Solve at least 5–10 problems for each topic to build a strong foundation. Use these practice sets to get started:

Phase 3: Practice Platforms

Start solving actual competitive programming questions on these recommended platforms:

  • Codeforces (The Gold Standard): Focus on the Problem Set. Start by sorting by "number of submissions" and set difficulty to 800. Participate in Div. 3 and Div. 4 contests. Codeforces
  • AtCoder: Excellent for increasing speed and practicing implementation. Try the AtCoder Beginner Contests (ABC). AtCoder Archive
  • CodeChef: Great for beginners and topic-specific practice via CodeChef Starters. CodeChef

Phase 4: Intermediate Topics

Study these from YouTube, GFG, or CP-Algorithms, then solve 20–25 questions on each:

Phase 5: Benchmarking Progress

Try giving Virtual Contests on Codeforces and aim for these targets to ensure you are improving:

  • Div-2: Solve 2–3 questions (up to problem C).
  • Div-3: Solve 4–5 questions (up to problem E).
  • Div-4: Solve 5–6 questions (up to problem F).

Phase 6: Advanced Topics

Once comfortable, move to advanced algorithms:

6.1 Number Theory & Combinatorics :- Resource

6.2 Data Structures & Algorithms


Essential Resources

  • CP-31 Sheet: TLE Eliminators CP-31 Sheet - This is an excellent resource for problem-solving. It categorizes Codeforces problems by rating , helping you build intuition and recognize patterns systematically.

  • CP-Algorithms: cp-algorithms.com - The absolute best website for detailed explanations and implementations of almost every algorithm and data structure used in competitive programming.

  • Repovive Roadmap: repovive.com/roadmaps

Join the Community

Ready to start your journey and grow together?

OPC (Open Programming Contest): OPC is a competitive programming contest regularly organized by the Coding Club of MNNIT Allahabad. It consists of a well-curated set of problems designed to test problem-solving and coding skills. The contest sees wide participation from programmers across many places, creating a competitive and engaging atmosphere.

Join our college CP community: MNNIT CC Club on Codeforces