Skip to main content

Command Palette

Search for a command to run...

Complete guideline to be a PRO competitive programmer

Updated
2 min readView as Markdown
Complete guideline to be a PRO competitive programmer
R

FRONT-END WEB DEVELOPER

Competitive Programming (CP) Math & Concepts Roadmap

This guide is designed for those who want to become top-level competitive programmers worldwide.

It includes all the mathematical concepts and core topics you need to master, along with suggested

resources.

Step 1: Basic Math for CP (Beginner Level)

Topics:

- Prime numbers, Divisibility rules

- GCD, LCM, Euclidean Algorithm

- Modular arithmetic (mod, inverse)

- Combinatorics basics: nCr, permutations

- Fast Exponentiation (Binary exponentiation)

Resources:

- CP-Algorithms: https://cp-algorithms.com

- Book: Competitive Programmer's Handbook - Antti Laaksonen (Chapters 2-4)

Step 2: Number Theory

Topics:

- Fermat's Little Theorem, Euler's Theorem

- Sieve of Eratosthenes

- Prime factorization techniques

- Chinese Remainder Theorem (CRT)

- Modular inverse techniques

Resources:

- CP-Algorithms Number Theory Section

- Book: A Path to Combinatorics for Undergraduates

- YouTube: William Lin math lectures

Step 3: Combinatorics & Probability

Topics:

- Factorials with mod

- Inclusion-Exclusion Principle- Pigeonhole Principle

- Catalan Numbers

- Burnside Lemma (Advanced)

Resources:

- Book: Art of Problem Solving Vol. 1 & 2

- Math StackExchange for problem-solving

Step 4: Geometry

Topics:

- 2D geometry basics (distance, area, angle)

- Cross and dot product

- Convex Hull algorithms

- Line/Circle intersections

- Pick's Theorem

Resources:

- Book: Computational Geometry - de Berg et al.

- CP-Algorithms Geometry Section

- Book: Challenge and Thrill of Pre-College Mathematics

Step 5: Advanced Math Topics

Topics:

- Linear Algebra (matrix exponentiation)

- Fast Fourier Transform (FFT), NTT

- Mobius Function, Euler Totient

- Game Theory (Grundy numbers)

Resources:

- Book: Concrete Mathematics by Knuth

- MIT OpenCourseWare (Discrete Math, Linear Algebra)

Optional: Olympiad Math Books (If Needed)

Topics:

- Art of Problem Solving Vol. 1 & 2

- Problem Solving Strategies - Arthur Engel

- Challenge and Thrill of Pre-College Mathematics (CTPCM)Resources:

- Use these books for deeper insight and creative problem solving.

More from this blog

Learning MySQL Database for beginners (Bangla)

today I will discuss about Database. this article can be read by all types o people, don't worry. আপনাদের প্রথমে ডাটাবেস নিয়ে পড়াশুনা করতে আসলে মনে হতে পারে এই ডাটাবেস আবার কি ? ডাটাবেস হল data + base এঁর সমন্বয়ে গঠিত একটি শব্দ । যার বাংলা অর্থ হচ্ছে...

May 24, 202317 min read85
Learning  MySQL Database for beginners  (Bangla)

simple discussion about mono repo

আমরা যখন একজন full-stack web developer তখন আমাদের backend and front-end সম্পর্কে বেশ ভালো জ্ঞান থাকতে হয় । অনেক সময় আমাদের একজকেই একটা প্রোজেক্ট এঁর backend and front-end এঁর কোড ম্যানেজ করতে হয় । বাক্তি ভেদে বিভিন্ন জন বিভিন্নভাবে প্রোজেক্টর backend...

Apr 13, 20232 min read15
simple discussion about mono repo

node js basic shorts (syntax and pattern)

এই প্রবন্ধে আমরা জানার চেষ্টা করব কে node JS এঁর কিছু কমন সিনট্যাক্স এন্ড প্যাটার্ন , যা আমরা প্রতিনিয়ত ভুলে যাই । কিভাবে নোড জেএস এ সার্ভার তৈরি করতে হয় ? const http = require("http"); const server = http.createServer((req, res) => { res.statusCode...

Apr 2, 20232 min read15
node js basic shorts (syntax and pattern)
M

MD. Rashedul Islam shihab

15 posts

Official blog of MD. Rashedul Islam Shihab, sharing practical programming tutorials, software development insights, project experiences, and the latest web technologies.