2 марта 2013 года в Одесском национальном университете имени И.И.Мечникова состоялось профессиональное соревнование программистов. Призы и финансирование мероприятия осуществляла компания «Opera Software». В организации соревнования также принимал участие Одесский национальный политехнический университет и компания «Компьютерные системы» (Одесса).

В данном соревновании могли принять участие все желающие, кто успел вовремя пройти регистрацию. Причём, как в очной форме, на базе ОНУ, так и дистанционно, отправляя готовый код программ на сервер соревнования через Интернет. Кроме того, участие могло быть как в личном первенстве, так и командным.

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

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

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

В соревновании принимала участие команда и нашего колледжа. Состав команды: Односталко Артур, Валентин Бондаренко, Исмаилова Сабина, Денисюк Сергей, Голяк Коля, Горлович Александра. Руководитель: Рудакова Оксана Николаевна. На сей раз наши ребята не выбились в лидеры, но, как говорится, главное – не победа, а участие. Мы от всей души поздравляем наших ребят с тем, что они не спасовали перед огромной толопй профессионалов, принимавших участие в соревновании и по мере сил решали здачи.

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

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

Таблица популярности компиляторов среди участников соревнования:

17% javac
70% g++
3% gcc
5% fpc
5% mcs

Как видно из таблицы, основными языками, на которых пишут студенты, являются С++ и Java – суммарно 87%.

Далее, что касается навыков программирования. Поскольку судейство производилось автоматически, то главным критерием положительной оценки был правильно работающий алгоритм. И под «правильным» следует понимать не только такой алгоритм, который выдаёт правильный ответ на тестовый вопрос, но и делает это за минимальное время.

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

 

Более подробно о задачах соревнования и о его результатах можно узнать по адресу: codeLands.info