up

Основы олимпиадного программирования

Изучите основы олимпиадного программирования с СПбГУ

26 September 2022 - 31 December 2023 г.
The program has already started
332 days
Before the end of the enrollment
  • Additional education for children and adults

    level of education

  • Russian

    program language

  • 8 weeks

    program duration

  • 2 credit points

    72 academic hour

  • Cost 4900 Р

    for studying

About program

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

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

Format

Онлайн-программа

Requirements

  • Базовое владение одним из языков программирования.
  • Program's program

    Модуль 1. Бинпоиск и сортировки 

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

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

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

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

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

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

    Модуль 8. Структуры данных

    Education results

    По завершении этого курса учащиеся будут:

    1. Знать базовый набор алгоритмов, необходимых для участия в олимпиадах по программированию на разных уровнях.

    2. Знать тонкости реализации сложных алгоритмов для их эффективной работы.

    3. Знать математическое подспорье общеизвестных алгоритмов.

    4. Уметь реализовывать различные сортировки и алгоритмы на графах.

    5. Уметь решать задачи на динамическое программирование и поиск кратчайших путей во взвешенных графах.

    6. Уметь реализовывать структуры данных и алгоритмы на строках.

    7. Владеть навыками написания быстрого и красивого кода.

    8. Владеть навыками работы с тестирующими системами, аналогичными тем, которые используются на олимпиадах.

    9. Владеть большой алгоритмической базой.

    Education directions

    Горбачев Егор Андреевич


    Position: преподаватель олимпиадного программирования

    Courses in program