Algorithms in Competitive Programming: Maths Puzzles I, Covering algorithms used in maths problems from beginner level to intermidiate level.
Course Description
This is a series of courses on popular algorithms used especially in the field of competitive programming!
Competitive programming is a mental sport that tests students on a variety of logical or mathematical problems, and the use of algorithms is essential in improving the efficiency of your solution.
The aim of competitive programming is to write source code of computer programs that are able to solve given problems. Typical such tasks belong to one of the following categories: combinatorics, number theory, graph theory, algorithmic game theory, computational geometry, string analysis, and data structures.
This course focuses not only on the implementation of algorithms but also on the mathematics behind these algorithms since they are requisite in understanding the correctness and efficiency of the algorithms. Specifically, rigid proofs for algorithms will be covered in this series of lectures.
Here, we will be starting with maths puzzles, where the link to mathematics is the most apparent! Hope you will be learning something useful in this course!
If you find this course intriguing or you want to learn more about competitive programming algorithms, please look forward to future addition to the series!
A typical course structure is as follows:
– Problem description
– A naive approach
– Introducing the algorithm
– Mathematical proof of the correctness and efficiency of the algorithm
– A sample problem
– Short quiz
– Hands-on practice