Books, courses, problem archives, and practice strategies to help you climb the ranks.
The reading that every serious competitor should cover.
The definitive algorithms textbook. Every algorithm you need, rigorously explained with proofs and exercises.
A hands-on guide focused specifically on ICPC and programming contest preparation.
Free, concise, and practical. Covers modern CP topics including segment trees, flows, and game theory.
The legendary series. Deep mathematical treatment of algorithms — for when you want to go beyond contest-level.
Where to find problems and track your improvement.
A curated set of 300 problems covering every standard CP topic. Often used as a structured learning path.
Structured All LevelsFree, community-driven training resource organized by topic. Includes editorial explanations and solution walkthroughs.
Modules Bronze to PlatinumOver 8,000 problems tagged by topic and difficulty. Filter by rating, tag, or contest for targeted practice.
Archive 800–3500 ratingCommunity site that tracks your AtCoder progress, suggests problems at your level, and visualizes rating trends.
Tracker All LevelsMassive article and problem archive. Good for quick topic lookup and interview-focused practice.
Articles Beginner–IntermediateOne of the oldest online judges with a vast multilingual problem archive. Great for exploring obscure topics.
Archive All LevelsA practical approach to improving your competitive programming skills.
After each contest, solve the problems you missed. This is where most improvement happens.
Sort problems by tag on Codeforces or AtCoder and drill into the areas dragging your rating down.
Reading an editorial after struggling is not giving up — it's learning the next technique in your toolbox.
Time yourself. Use the same editor and workflow you use in rated contests. Build muscle memory.
Keep clean, reusable implementations of common algorithms — useful for team contests like ICPC.
Write editorials or explain solutions to peers. Teaching forces you to truly understand the material.