8.63M
Категория: ПрограммированиеПрограммирование

Олимпиадное программирование. Движение олимпиадного программирования в России

1.

МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение высшего
образования
«САРАТОВСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИМЕНИ Н.Г. ЧЕРНЫШЕВСКОГО»
Олимпиадное программирование. Движение олимпиадного программирования в России.
студента 1 курса 141 группы
02.03.03 Математическое обеспечение и администрирование информационных систем
Факультета компьютерных наук и информационных технологий
Розымурадова Владлена

2.

СЛОГАН МОЕЙ ПРЕЗЕНТАЦИИ:
ПРОГРАММИРОВАНИЕ – ЭТО СПОРТ!

3.

УСЛОВИЕ ЗАДАЧИ В ГЕОМЕТРИИ
Дан треугольник со сторонами 3, 4 и 5 см. Найдите его площадь.

4.

УСЛОВИЕ ЗАДАЧИ В ПРОГРАММИРОВАНИИ
Дан треугольник со сторонами A, B и C см. Найдите его площадь.

5.

Правильность программ участников проверяется тестами. Однако почти
всегда всевозможных тестов может быть слишком, даже бесконечно много.
Проверка должна занимать от силы пару минут, поэтому даже в
тестировании все должно быть эффективно.

6.

САМЫЕ ПРЕСТИЖНЫЕ ТУРНИРЫ ПО
ПРОГРАММИРОВАНИЮ

7.

Многие университеты проводят внутренние
соревнования, чтобы определить своих
представителей на региональном уровне. Затем
проводятся региональные олимпиады, победители
которых отправляются на финальный этап
мирового первенства.
ПРИНЦИП ТУРНИРНОГО ОТБОРА

8.

ПО ОПРОСАМ СРЕДИ ОЛИМПИАДНИКОВ
БЕЗОГОВОРОЧНОЙ ПОПУЛЯРНОСТЬЮ
ПОЛЬЗУЕТСЯ ЯЗЫК C++

9.

10.

«МАМА, Я СПОРТСМЕН»

11.

Теперь статус шахмат как «самый интеллектуальный
вид спорта» поставлен под сомнение

12.

С 2000 года по
настоящее время
команды,
представляющие
Российские ВУЗы,
успели стать
чемпионами 15 раз

13.

Команда СГУ празднует своё чемпионство.
2006 год.

14.

«Не мне вам говорить о том, насколько сфера
вашей деятельности важна для любой
современной экономики — и для российской
тоже. Я недавно выступал здесь, в
Петербурге, на Петербургском
международном экономическом форуме, и как
раз говорил о том, что в ближайшие 10–20 лет
мировая экономика кардинальным образом
изменится и весь мир вместе с ней изменится
в результате применения новейших
технологий», — отметил глава государства.
Встреча В.В.Путина со студентами СПБГУ и ИТМО
в 2016 году

15.

Представим себе коридор с n-нным
числом запертых дверей. Если
превратить их открывание в задачу с
алгоритмом, то у неё будет несколько
решений.
Подход «промышленного»
программиста заключается в
создании дешёвого ключа, которым
можно вскрыть как можно больше
дверей. Задача «спортивного»
программиста – найти отмычку,
которая вскроет всё за пять минут.

16.

Программист-универсал,
который занимается
промышленным
программированием, и имеет
за своими плечами опыт
участия в олимпиадах.
Карикатурный
промышленный
разработчик, который
заточен только на создание
шаблонного рабочего кода.

17.

#1 Спортивное программирование учит
писать код без багов
Спортивное программирование учит находить нюансы, прогнозировать
«неудобные» и «крайние» случаи, ощущать потенциальные баги,
заботиться о производительности.

18.

Шаблонный разработчик
исправляет код по 100 раз, каждый
раз находя в своём коде всё новые и
новые ошибки, которые он создаёт,
когда исправляет старые.
Программист-универсал не умеет
дебажить. Он привык сразу писать
правильный код.

19.

#2 Спортивное программирование учит
работать в команде
Спортивное программирование
учит работать в коллективе. Учит
слышать других, принимать во
внимание чужие идеи, дополнять
их своими. Если Вы научитесь
управлять ACM-ной командой,
это непременно зачтётся в плюс в
вашем будущем.

20.

Шаблонный разработчик пишет
код, который понимает только он.
Главное для него – чтобы код
работал к дэдлайну. Ну а после
сдачи проекта будет не понимать
его сам.
Программист-универсал пишет
код в команде. Так, чтобы он был
понятен всем. Если код начнёт
терять свою актуальность,
программист с олимпиадным
опытом сможет оперативно
переделать его.

21.

#3 Спортивное программирование учит
использовать на практике фундаментальные
знания
За весь период обучения будущему
специалисту приходится заучивать
огромную базу теоретических
знаний. Гоняясь за оценкам студент
может забыть, что главный смысл в
изучении теоретического материала
– это умение в дальнейшем
использовать все эти знания на
практике.

22.

Шаблонный разработчик знает все
аббревиатуры, концепции,
архитектуры, паттерны… но резко
теряется, когда ему дают задачу, где
нужно решить что-то, применяя эти
самые фундаментальные знания на
практике.
Программист-универсал все свои
знания применяет на деле. Он
испытывает на практике всё то, что
освоил теоретически.

23.

#4 Оперативность программиста с олимпиадным
опытом ценится на вечно меняющимся
финансовом рынке.
Биржевая аналитика, алгоритмическая торговля, блокчейн-платформы.
Именно там прорывные идеи и нестандартное мышление
олимпиадников пригождаются особенно сильно.

24.

Шаблонный разработчик
привык пользоваться паттернами,
по несколько раз юзать
шаблонные алгоритмы. Со своим
не динамическим подходом ему
не удастся остаться на плаву в IT
сфере финансового рынка.
Программист-универсал с
опытом в спортивном
программировании выработал
профессиональную привычку
держать руку на пульсе. Он
способен уследить за ситуацией в
мире финансов.

25.

26.

27.

28.

29.

30.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Спортивное программирование: не всё так просто, как кажется [Электронный ресурс]. URL:
https://habr.com/ru/amp/post/656513/
Официальный сайт турнира ICPC [Электронный ресурс]. URL: https://icpc.itmo.ru/ru/competitions/icpc
Разбор задач финала турнира чемпионата мира по программированию ICPC 2013 [Электронный ресурс].
URL: https://habr.com/ru/company/yandex/blog/186316/
Что такое спортивное программирование и какова роль России в его развитии [Электронный ресурс]. URL:
https://tass.ru/sport/15732295/amp
Замглавы минцифры: Чемпионат России по программированию пройдет в 2023 [Электронный ресурс]. URL:
https://digital.gov.ru/ru/events/42194/?utm_referrer=https%3a%2f%2fdigital.gov.ru%2fru%2fevents%2f42194%2f
Центр Олимпиадной Подготовки СГУ [Электронный ресурс]. URL: http://copp.sgu.ru/.
Что такое спортивное программирование и как оно работает. [Электронный ресурс]. URL:
https://trends.rbc.ru/trends/amp/news/6152c6129a79478579d1edaf
English     Русский Правила