Practice with Codeforces Roadmap

Step by step guide to becoming an Android developer.

Back to home

Legend

Propose
Alternatives
Options

1Foundations

Choose Programming Language (C++)
Big O Notation
Set Up Environment

2Newbie (Rating < 1200)

Basic Math & Number Theory
Brute Force Technique
Sorting & Greedy
Using Basic Data Structures

3Pupil (Rating 1200-1400)

Binary Search
Two Pointers Technique
DFS & BFS
Modulo Arithmetic

4Specialist (Rating 1400-1600)

Basic Dynamic Programming (DP)
Advanced Graph (Dijkstra, MST)
Tree Data Structures (BST, Heap)
Query Processing (Prefix Sums)

5Expert (Rating 1600-1900)

Advanced Dynamic Programming
Segment Tree & Fenwick Tree
Max Flow
Game Theory

6Candidate Master & Above (Rating 1900+)

Advanced String Algorithms
Computational Geometry
FFT & Polynomial Multiplication
Intensive Practice

Visit the following related paths and keep learning.