## CPPS 101

# Competitive Programming and Problem Solving 101

## Number Theory

- Euclidean Algorithm – Greatest Common Divisor
- Lowest Common Multiple of Two Number
- Primality Test – Naive Methods
- Sieve of Eratosthenes – Generating Primes
- Prime Number Theorem
- Prime Factorization of an Integer
- Introduction to Modular Arithmetic
- Extended Euclidean Algorithm
- Simple Hyperbolic Diophantine Equation
- Introduction to Number Systems
- Factorial
- Modular Exponentiation
- Euler Totient or Phi Function
- Modular Multiplicative Inverse
- Chinese Remainder Theorem

# Combinatorics

- Stars and Bars Theorem New!!
- Prufer Code