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

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

Олимпиада по программированию (олимпиада по информатике) — интеллектуальное соревнование по решению различных задач на ЭВМ, для решения которых необходимо придумать и применить какой-либо алгоритм и/или программу на одном из языков программирования. Как правило участникам выдается комплект из нескольких задач. Задача считается решённой, если участники смогли составить программу, которая правильно работает на тестах, подготовленных жюри. Тесты участникам неизвестны.

Олимпиады бывают личные и командные. В командных олимпиадах обычно участвует 3 человека и им на всё время олимпиады дается 1 компьютер для решения задач.

Для проведения подобных соревнований используются турнирные системы, например Contester[1] и eJudge[2].

Содержание

Олимпиады в СССР и РФ

Среди школьников

Первая олимпиада по программированию в СССР (под названием олимпиада по информатике) прошла среди школьников и состоялась в 1989 году в Свердловске[3]. В дальнейшем олимпиады по информатике стали частью всесоюзных (а после распада СССР — всероссийских) предметных олимпиад школьников. Всероссийская олимпиада школьников по информатике 2011 прошла в Перми.

Традиционно олимпиады школьников являются личными соревнованиями, проводятся по многоуровневой системе, в несколько этапов:

  • Районная олимпиада
  • Городская олимпиада
  • Региональная олимпиада
  • Национальная олимпиада

Победители всероссийской олимпиады получают право участия в международных олимпиадах по информатике.

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

Командные соревнования школьников

Также проводятся многоуровневые командные олимпиады среди школьников, по правилам аналогичным правилам международных студенческих олимпиад[4][5].

Студенты

Олимпиады по информатике среди студентов СССР в масштабах всей страны не проводились. Начиная с 1996 года студенты российских вузов начали участвовать в соревнованиях входящих в систему командного чемпионата мира по программированию среди студентов, проводимого американской ассоциацией ACM.

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

Олимпиады в Беларуси

Олимпиады среди школьников

В Беларуси олимпиады по программированию (по информатике) среди школьников проходит в несколько этапов.

Первый этап — внутри школьная олимпиада. Проводится среди учеников конкретного учреждения образования. В результате соревнования, победители проходят на следующий этап. Для проведения таких олимпиад используются системы тестирования (турнирные системы). Какую именно систему использовать решают организаторы олимпиады. Например, в Бресте используется система Brain Training[6], в некоторых заведениях система eJudge[2].

Второй этап — районная олимпиада (иногда её называют городской). Такая олимпиада проводится среди победителей предыдущего этапа, представленных каждой школой определённого района города. Например, в Бресте проводятся две районные олимпиады: для Московского и Ленинского района. Победители от каждого района проходят на следующий этап. Обязательные условия для продолжения участия в олимпиаде (переход на следующий этап) — набрать более 50 % возможных баллов.

Третий этап — областная олимпиада. Здесь принимают участие победители предыдущего этапа (районной олимпиады). Вся Беларусь разделена на 6 областей (Брестская, Витебская, Могилёвская, Гродненская, Гомельская и Минская), а также город Минск. В каждой из них происходит отбор участников на следующий этап олимпиады.

Четвёртый этап — республиканская олимпиада (заключительный этап). Победители областных олимпиад соревнуются за звание лучшего программиста среди школьников.

Лучшие участники республиканской олимпиады (обычно только из 9-11 классов), отбираются на сборы по подготовке к международной олимпиаде по информатике. В течение сборов из них отбирается окончательная команда.

ACM International Collegiate Programming Contest

Крупнейшая международная студенческая командная олимпиада по программированию называется ACM International Collegiate Programming Contest. Генеральными спонсорами чемпионата выступают такие гиганты как Microsoft и IBM. В 2004 году в ней участвовало 3150 команд из 75 стран.

Команды из России неоднократно становились победителями этого престижного соревнования[7][8][9][10][11]. По итогам удачных выступлений команды удостаивались встречи с Президентом РФ[12][13][14]. Один из тренеров и организаторов этих олимпиад в России был награждён Премиями Президента РФ и Правительства РФ в области образования[15].

Специализированные олимпиады

Известная фирма-разработчик бухгалтерских программ проводит олимпиаду по программированию на встроенном языке своей системы[16]

Другие известные соревнования

В последнее время появился более общий термин «спортивное программирование». Состязания по спортивному программированию не связаны напрямую с системой образования, то есть в них также принимают участие и профессиональные программисты. Популярное состязание по спортивному программированию в мире — конкурс TopCoder.

Задачи

На классических олимпиадах по программированию участникам предлагается некоторый набор задач различного уровня сложности. Решением задачи является программа, написанная на одном из допустимых языков программирования. Эта программа должна корректно считывать любые входные данные указанного формата из определённого входного потока, корректно обрабатывать их согласно условию задачи, и выводить в определённый выходной поток в указанном виде. Для ввода-вывода могут использоваться как стандартные консольные потоки, так и файловые (часто входной файл имеет имя «input.txt», а выходной — «output.txt»).

Все решения проверяются автоматизированной тестирующей системой. Она запускает каждое решение на некотором наборе тестов. После завершения работы программы она оценивает правильность полученных выходных данных — сравнивает с эталонными или производит более сложные действия.

Особенностью олимпиадных задач является художественность их условия. В условиях редко ведётся речь о структурах данных и алгоритмах, приводящих к решению. Чаще условие задачи представляет собой короткий рассказ со своим сюжетом, героями и конфликтом. Таким образом, чтобы решить олимпиадную задачу, нужно предварительно составить математическую модель событий, и уже по ней подобрать или построить подходящий алгоритм. Алгоритм может быть как одним из уже известных алгоритмов, так и абсолютно новым, непохожим на другие.

Пример классической простейшей задачи, часто используемой для пробного тура: A+B.

Примечания

  1. Contester
  2. 1 2 eJudge
  3. Олимпиады — История олимпиады
  4. Уральская региональная олимпиада по программированию / Центр классического образования УрФУ им. Б. Н. Ельцина (УрГУ)
  5. Олимпиады по информатике. Санкт-Петербург, Россия
  6. Brain Training. Система для проведения соревнований по программированию
  7. http://snarknews.info/index.cgi?data=icpc/finals/08/final08pr&menu=final08&head=index
  8. Чемпионы мира из ИТМО в новостях РЕН ТВ :: :: Видео на RuTube
  9. В Петербурге открылась академия программирования — Наталья Шергина — «Чемпионы мира получили кластер» — Российская Газета — В Северной столице открылась …
  10. Студенты ИТМО стали чемпионами мира по программированию
  11. Дмитрий Медведев встретился с победителями чемпионата мира по программированию — Первый канал
  12. Президент сегодня встретился со студентами — победителями чемпионата мира по программированию — Первый канал
  13. Президент России Дмитрий Медведев продолжит традицию встреч с российскими студентами-победителями Чемпионата мира по программированию среди сборных команд вузов. — РИА Новости …
  14. Три золотых медали привезли в РФ победители первенства планеты по программированию — Первый канал
  15. Станкевич Андрей Сергеевич
  16. Фирма «1С» / Новости / Список информационных выпусков / 24-я Международная Олимпиада по программированию учетно-аналитических задач на платформе "1С:Предприят …

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "Олимпиады по программированию" в других словарях:

  • Олимпиады по информационным технологиям — Олимпиады по информационным технологиям  соревнования между молодыми IT специалистами, призванные реализовать потенциал начинающих Web мастеров, программистов, администраторов и прочих работников IT, а также побудить их развивать собственные …   Википедия

  • Олимпиада по программированию — интеллектуальное соревнование по решению различных задач на ЭВМ, для решения которых необходимо придумать и применить какой либо программу и/или алгоритм на одном из языков программирования. Олимпиады по программированию проводятся с целью… …   Википедия

  • Международная студенческая олимпиада по программированию — (в английском принято сокращение ACM/ICPC или просто ICPC)  крупнейшая студенческая командная олимпиада по программированию. Содержание 1 История 2 Правила 3 Этапы …   Википедия

  • Киевские олимпиады по информатике — Киевские олимпиады по информатике  это ежегодное индивидуальное соревнование по информатике среди школьников 8 11 х классов. В настоящее время соревнование проходит в два тура (два последовательных воскресенья), в каждом из которых… …   Википедия

  • Олимпиадное программирование — Олимпиада по программированию интеллектуальное соревнование по решению различных задач на ЭВМ, для решения которых необходимо придумать и применить какой либо программу и/или алгоритм на одном из языков программирования. Олимпиады по… …   Википедия

  • Брудно, Александр Львович — Брудно Александр Львович Дата рождения: 10 января …   Википедия

  • Группа IBA — У этого термина существуют и другие значения, см. IBA. «Группа IBA»  это альянс компаний, специализирующихся в области информационных технологий. Группа IBA …   Википедия

  • Физико-математический факультет МГПИ им. М.Е.Евсевьева — Физико математический  старейший факультет  существует со дня основания института в 1962 году. В настоящее время на факультете ведется профессиональная подготовка по трем специальностям: «Математика» с дополнительной специальностью… …   Википедия

  • Олимпиада — Олимпийские игры современности: Летние Олимпийские игры. Зимние Олимпийские игры. Античные Олимпийские игры. Олимпиада (хронология) период между двумя античными Олимпийскими играми. Греческие историки использовали счёт времени по олимпиадам.… …   Википедия

  • НИКС — Компьютерный Супермаркет — «НИКС  Компьютерный Супермаркет» Год основания 1991 Расположение …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»