Your Learning Path

The Topic List provides structured learning paths for Competitive Programming. Each topic includes curated resources, practice problems, template codes, and community solutions — organized by difficulty and importance.

Choose your level below to see a personalized roadmap

Select Your Level

Beginner

New to programming

Start from scratch with Basics

Intermediate

Knows the basics

Structured topic-wise learning & ICPC prep

Advanced

Codeforces Purple or Beyond

Compete at the highest level

Interview Prep

Tech Interviews

Topics asked at top tech companies

Getting Started

1

Open the Basics Category

Click on 'Basics' in the Topic List - it's a complete beginner-friendly roadmap. If you know nothing about programming, then you can learn programming following this guide and also get started with competitive programming.

2

Follow Topics in Order

Each topic includes learning resources (articles, videos, tutorials) and practice problems - all curated for you.

3

Learn → Practice → Repeat

Read the resources first, then solve the attached problems. Problems are sorted by difficulty.

4

Use Template Codes

Check template codes in topics to see clean implementations you can learn from.

5

Learn from Others

Stuck on a problem? Each problem has solutions from other users - see different approaches and learn new techniques.

6

Start Participating in Contests

Once comfortable with basics, join beginner-friendly contests on Codeforces (Div 2/3/4). Don't worry about rating initially - focus on learning.

7

Upsolve After Contests

After each contest, solve problems you couldn't finish. Check editorials and others' solutions to understand what you missed.

8

That's It!

Everything you need is here - resources, problems, templates, and community solutions. Just follow the Basics category step by step.

Do not get overwhelmed by the number of topics. Just start with the basics and keep going. If you are done with the basics, then you are already better than 80% of the people and ready to be an Expert in Codeforces. And, if you are done with most of the 3* topics of easy and medium difficulty, and solve enough problems in Codeforces, then that is enough for you to be a Grandmaster in Codeforces, and this should also be enough for ICPC contests. Of course if you want to perform the best in ICPC, you might need to learn more.

Focus on quality over quantity. Understanding concepts deeply is more valuable than rushing through topics.

Need Help?

Join our Discord community for guidance, discussions, and support

Join Discord Server