This online course will help you to join the world of competitive programming and even become worldwide competitions participant! The course includes theoretical and practical aspects that are necessary to solve problems of any difficulties.
Offered By
Competitive Programming for Beginners
Moscow Institute of Physics and TechnologyAbout this Course
You should know the basics of at least one of the following programming languages: C/C++, Java, Pascal/Delphi, Python.
What you will learn
Basic Algorithms
Number and Graph Theories
Dynamic Programming
Skills you will gain
You should know the basics of at least one of the following programming languages: C/C++, Java, Pascal/Delphi, Python.
Offered by

Moscow Institute of Physics and Technology
Московский физико-технический институт (Физтех) является одним из ведущих вузов страны и входит в основные рейтинги лучших университетов мира. Институт обладает не только богатой историей – основателями и профессорами института были Нобелевские лауреаты Пётр Капица, Лев Ландау и Николай Семенов – но и большой научно-исследовательской базой.
Syllabus - What you will learn from this course
Basic Algorithms
In this first module of our course we will: talk about how to measure efficiency of the developed algorithm; learn what is asymptotics; learn how to implement some simplest algorithms.
Number Theory
In this module of our course we will: talk about integer data types in existing programming languages, limitations of these types and ways to pass those limitations in competitive programming tasks; look at some applications of the modulo calculations related to the calculation of the greatest common divisor; learn what the regular and extended Euclid's algorithm is and how they are used in math (to prove important theorems) and in programming.
Dynamic Programming
In this module we will talk about the dynamic programming. You surely have been faced with it when you implemented prefix sums or the sieve of Erathosphenes. Also it turns out to be a part of a large number of algorithms, so it’s extremely important to learn the topic in small details.
Graph Theory
In this closing part of our course we shall get acquainted with the basic definitions and algorithms of graph theory in regard to competitive programming in general
Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I purchase the Certificate?
Is financial aid available?
Will I earn university credit for completing the Course?
More questions? Visit the Learner Help Center.