Для начала изучения спортивного программирования рекомендуется:
- Освоить хотя бы один язык программирования. 15 Лучше всего подойдут С, С++ и Java, но популярный вариант для начала — Python. 1
- Подтянуть теорию. 1 Можно пройти онлайн-курсы, например, на Coursera есть бесплатные базовые курсы по работе с алгоритмами. 1 Также можно почитать справочник «Олимпиадное программирование» Антти Лааксонена или гид «Спортивное программирование» Стивена и Феликса Халимов. 1
- Начать решать задачи. 1 Чтобы понять специфику заданий на соревнованиях, можно зарегистрироваться на популярных платформах, например, Timus Online Judge, SPOJ, Codechef, TopCoder и Codeforces. 1 Начинать стоит с задач, у которых самый большой процент решаемости — они самые простые. 1
- Подключиться к коммьюнити. 1 Среда и живая коммуникация помогают продвигаться быстрее. 1 Можно зарегистрироваться на сборы, буткэмпы и интенсивы. 1
- Начать участвовать в контестах. 1 Большинство крупных чемпионатов проводят онлайн-раунды, в которые попасть может любой желающий. 1 Например, можно поучаствовать в фестивале RuCode, организаторами которого являются МФТИ и другие ведущие российские вузы. 3
Также для знакомства с программированием можно воспользоваться, например, сайтом «Питонтьютор», где в доступной форме с большим количеством объяснений и примеров знакомят с синтаксисом языка Python и базовыми алгоритмами. 4