  Online Course
Essential Maths for Competitive Programming
Active ## Course Overview This course is designed specially for 1st/2nd year students whose knowledge may range from beginner to intermediate and are willing to strengthen their skills.
Here you will be building your programming concepts in competitive programming with our industry experts who not only will strengthen your mathematical skills but will make you a pro in them!

## Course Features • Extremely Beginner friendly

• Tracks-based learning

• Practice problems

• Premium Lecture videos by industry experts

• Course Completion Certificate trusted by top universities and companies

• Internship Opportunities at GeeksforGeeks

## What You Will Learn • Time Complexities

• Prime numbers and factorizations

• LCM and other Mathematical Principles

• Catalan numbers and much more

## Course Content #### Module 1

• Time Complexity
• Analysis of Algorithms
• Analysis of common loops, recursion
• Asymptotic Notation
• Space Complexity
• Order of Growth
• Basics
• Arithmetic and Geometric Progressions
• Solving First Competitive Programming Problem
• Ranges of Input and Output
• C++ Tricks for Competitive Programming
• Using Typedef and Macros in C++
• Sum of first N natural numbers
• Sum of squares of first N natural number
• Factorial of a Number
• Trailing Zeroes in Factorial
• Maximum Power Dividing Factorial
• Practice Problems
• Fibonacci
• Fibonacci Numbers and Implementation
• Properties of Fibonacci Numbers
• Fibonacci Divisibility and GCD
• Duddeney's Cow
• Count Binary Strings With No two consecuetive 1's
• Count ways to reach n-th stair
• Sum of Fibonacci and of Fibonacci Squares
• Fibonacci Log N Implementation
• Pisano's Period
• Fibonacci Mod M
• Practice Problems
• Bitwise OR, AND, XOR
• Bitwise Tricks
• Count Set Bit
• Check Kth bit is set or not
• Power of 2
• One odd Occuring
• Two Odd Occuring
• Gray Code
• Power Set Using Bitwise
• Practice Problems

#### Module 2

• Prime Numbers
• Prime Number and Concept
• Sieve of Erathoneses
• Segemented Seive
• Practice Problems
• Prime Factorization
• All prime factors of a number
• Least Prime factor concept
• Prime factors for multiple queries
• Practice Problems
• DIvisors
• O(sqrt(N)) approach
• Count Divisors
• Numbers with Exactly 3 Divisors
• Count Factors for Multiple queries
• Sum of Divisors and Multiple Queries
• Practice Problems

#### Module 3

• GCD & LCM
• GCD & LCM Concept
• Basic & Euclidean Algorithm
• Bezout's Identity
• Linear Diophantine Equation
• Practice Problems
• Number Theoretic Functions
• Euler Tointent
• Properties of Euler Toitent function
• Euler Toitent for 1 to N
• Practice Problems
• Mathematics Principles
• Inclusion & Exclusion Principle
• Pigeon Hole Principle
• Derangements
• Counting Derangements
• Subarray sum divisible by Size
• Practice Problems

#### Module 4

• Modular Operations
• Modular arithmetic Introduction
• Modular Arithmetic in Competitive Coding
• Range of int Type
• Modular Arithmetic Properties
• Mod Inverse Concept
• Mod Inverse Using Euler's Theorem
• Working of Euler's Theorem
• Mod Inverse Using Fermat Little
• Mod Inverse from 1 to N
• Chinese Remainder Theorem
• CRT Efficient Implementation
• Modular Exponentiation
• Computing Power
• Iterative Power
• Matrix Exponetiation
• Fibonacci Number using Matrix Exponentiation
• Binomial Concepts
• Permutation
• Printing All Permutations
• Combination
• nCr (Simple)
• nCr (recursive)
• nCr MOD p for large Prime
• Practice Problems
• Catalan Number
• Catalan Number and Concept
• Count Way to reach grid top
• Number of Binary Trees
• Counting Polygon Triangulation
• More Problems on Catalan
• Catalan Number Implementation Based Problems

#### Module 5

• Combinational Game Theory
• Introduction
• Impartial Game Examples
• Grundy Number & its implementation
• Mex & Grundy Number
• Composites Game
• Sprague Grundy Theorem
• The Game of Nim
• Working of Nim-Sum & Grundy Number Theorem
• Practice Problems
• Geometric Algorithms
• Orientation of three ordered points
•  Line segment Intersection
•  Convex Hull Problem
•  Gift Wrapping Algorithm (or Janvi's March)
•  CPP Implementation of Jarvi's March algorithm
•  Collinear Points in Jarvi's algorithm
•  Graham Scan Algorithm for Convex Hull
•  Graham Scan Algorithm in C++
•  Closest Pair of Points
•  Implementation of Closest Pair in C++
•  Working of Closest Pair Algorithm
•  Sweep Line Algorithm for Any Two Intersection
• Practice Problems.
• Misc. Problems

## FAQs 1. Is there any number to contact for any query?
You may call us on our toll-free number: 1800 258 4458  or Drop us an email at geeks.classes@geeksforgeeks.org​​​

2. Do we have doubt support in this program?
No, This program doesn't have doubt-solving support.

3. Is this a language-specific course?
Yes, the course is only in C++. In case you are not familiar with this language, you may join our free course, Fork CPP to best utilize this course.

4. How can I register for the course?
You need to sign up for the course. After signing up, you need to pay when the payment link opens.

5. What type of certificate will be offered in this program
Once the course is completed. You'll be getting a course completion certificate.

6. When can I make the payment for the course?
The payment link will be available on the course page.

7. Will the course content be available after the course end date?
Course content comes with lifetime validity.

8. Can I make the payment through PayPal?
Yes. Mail us with your details at geeks.classes@geeksforgeeks.org.

## Course Registration #### Active Batches

Batch Date Type Register
CP Mathematics Active Online Classes