Олимпиадное программирование: учись и побеждай

О курсе

Данный курс рассчитан на школьников 5-11 классов, которые хотели бы достигнуть высоких результатов в олимпиадах по программированию, таких как муниципальный и региональный этапы Всероссийской олимпиады школьников по информатике.

Курс также подойдет для студентов бакалавриата, изучающих математику и компьютерные науки, интересующихся решением задач по программированию и желающих участвовать в олимпиадах и международных соревнованиях. Данный курс предназначен для начинающих, то есть для его прохождения не понадобится ничего, кроме базового владения каким-либо языком программирования и базовых знаний из школьной программы по математике. В курсе представлен обширный набор алгоритмов и структур данных, которых будет достаточно не только для того, чтобы показать какие-то результаты на муниципальном этапе, но и взять диплом призера на финальном этапе всероссийской олимпиады школьников по информатике. В курс входят такие темы, как: бинпоиск, сортировка пузырьком, сортировка слиянием, быстрая сортировка, базовые задачи динамического программирования, поиск наибольшей общей подпоследовательности, поиск наибольшей возрастающей подпоследовательности, алгоритмы DFS и BFS, алгоритмы Дейкстры, Флойда и Форда — Беллмана, задачи динамического программирования на дереве, задача о рюкзаке, динамика по подотрезкам и подмножествам, генерация комбинаторных объектов, бинарное возведение в степень, алгоритм Евклида, хеши, Z-функция, префикс-функция, дерево отрезков, дерево Фенвика и т. д.

Структура курса

Модуль 1. Сортировки и бинарный поиск

Модуль 2. Динамика

Модуль 3. Графы. DFS, BFS

Модуль 4. Кратчайшие пути во взвешенных графах

Модуль 5. Динамика. Часть 2

Модуль 6. Комбинаторика и теория чисел

Модуль 7. Строки

Модуль 8. Отрезковые статистики: RSQ, RMQ

Записаться на курс:
Авторы курса:

  • Егор Андреевич Горбачев
    Преподаватель олимпиадного программирования в Академической гимназии имени Д. К. Фаддеева
©Санкт-Петербургский государственный университет
2024 год