Что такое соревнования по программированию

Несколько наивных вопросов о соревнованиях по программированию

1. Что такое соревнования по программированию?

2. А причем здесь [image] ?

3. А что я с этого буду иметь?

4. С чего мне начать?

1. Что такое соревнования по программированию?

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

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

Характер задач обычно предполагает, что участники продемонстрируют мастерство как в алгоритмизации задач, так и в составлении эффективных программ, реализующих выбранные для решения алгоритмы.

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

Во время соревнований команде, кроме задач, приходится решать ряд других проблем:

  • какие задачи решать в первую очередь, а какие - во вторую?

  • кто какую задачу должен решать?

  • на каком языке программирования (Си или Паскаль) лучше решать задачу?

  • как распределить компьютерное время (в команде 3 человека, а компьютер только один)?

  • что делать (и кто виноват :), если задача не сдается?

Некоторые советы по тактике боя и стратегии подготовки можно прочитать здесь .

2. А причем здесь [image] ?

Американское компьютерное сообщество ACM (Assosiation for Computing Machinery) основано в 1947 году в Пенсильванском университете США, где был создан первый в мире компьютер ENIAC. Сегодня ACM объединяет более 100 тыс. ученых, инженеров, программистов, студентов, занимающихся проблемами компьютерных наук. ACM проводит конференции, издает журналы и книги, поддерживает огромные цифровые библиотеки. Ежегодно ACM вручает Тьюринговскую премию за достижения в области теоретической информатики и компьютерных технологий ("нобелевская премия" в области компьютеров), в 1996 году ACM организовало матч чемпиона мира по шахматам Г. Каспарова и компьютера Deep Blue (IBM).

ACM также проводит Командный чемпионат мира по программированию среди ВУЗов, начиная с 1977 года. За более чем 20-летнюю историю этих состязаний и сформировались международные правила этих соревнований.

Российские ВУЗы участвуют в ACM чемпионате мира по программированию с 1993 года. Территория экс-СССР - Северо-Восточный Европейский регион мира - разбита на зоны, в которых проводятся четвертьфинальные соревнования. ЧелГУ относится к Уральской зоне и, следовательно, участвует в Чемпионате Урала.
Победители четвертьфиналов выходят в полуфинал (чемпионат России и СНГ), который проводится в Санкт-Петербурге. Подробнее о схеме проведения соревнований в России можно узнать здесь.

3. А что я с этого буду иметь?

Очень может быть, что Вы можете победить в ежегодном открытом Чемпионате математического факультета по программированию. Вас ждет денежная премия от факультета, восхищение сокурсников (и сокурсниц ;), уважение преподавателей, и в составе сборной ЧелГУ по программированию Вы сможете съездить на четвертьфинал первенства мира (отдохнув от учебы ;). Заметьте также, что уважение преподавателей сильно помогает в сдаче зачетов и экзаменов, и не только по компьютерным дисциплинам.

Не исключено, что в результате упорных тренировок в составе сборной Вы успешно выступите в четвертьфинале и попадете в полуфинальную часть чемпионата мира, которая проходит в Санкт-Петербурге. Вас снова ждет восхищение сокурсников (и сокурсниц ;), уважение преподавателей, недельный отдых от учебы, возможность увидеть Зимний дворец, Эрмитаж, Исаакиевский собор, крейсер "Аврора" и др. и пр. (а также всенепременно денежная премия).

Не есть невозможно, что Вы, продолжая тренироваться так же упорно, в составе сборной команды ЧелГУ по программированию, выступите в полуфинале настолько успешно, что попадете в финальную часть чемпионата мира, которая проводится за границей: в 1998 году - в США, в 1999 году - в Голландии. Неужели Вы откажетесь от отдыха за рубежом, восхищенных взглядов сокурсников (и сокурсниц ;), уважения преподавателей, и опять-таки денежной премии (только в случае Вашей победы ;)? Кроме того, фирмы-спонсоры финала настойчиво приглашают его участников к себе на работу. Неужто Вы откажетесь поработать в Borland, IBM или Microsoft?

НО ДАЖЕ ЕСЛИ ВЫ НЕ ПОБЕДИТЕ, а просто примете участие в тренировках и/или в соревнованиях, то Вам обязательно будут обеспечены восхищение сокурсников (и сокурсниц ;), уважение преподавателей, и, что самое главное, ПОВЫШЕНИЕ ВАШЕГО ИНТЕЛЛЕКТУАЛЬНОГО УРОВНЯ И КЛАССА КАК ПРОГРАММИСТА. Разве Вы можете отказаться от этого?

4. С чего мне начать?

Изучите правила соревнований. Посмотрите умные книжки и примеры задач.

Главная страница | О соревнованиях | Правила соревн | Ссылки
Библиотека | Архив задач | Летопись соревн |

Изменено 12-Ноя-01 Авторские права (с) М.Л. Цымблер