Getting Started

What is Competitive Programming?

A summary of modern C++ features

Number

Rabin-Miller’s Test for Primality

GCD, LCM and Euclidean Algorithm Extended

Basics of Factorization And Combinatorics

Search

String

Geometry

Center and Radius of a circle given 3 points

Rotate a point around another point

Equation of line passing through 2 points

Equation of a circle given center and radius

Sweep Line Algorithm for Closest Pair problem

Dynamic Programming

Graph

Strongly Connected Component – Tarjan Algorithm

Flow

Maximum Matching on Bipartite Graph – Hungarian Algorithm

Range Query

Binary Indexed Tree 2D (BIT-2D)

Matrix

Scheduling

Hashing

Game Theory