TopCoder

Логотип TopCoderTopCoder — корпорация, проводящая соревнования по спортивному программированию. В отличие от ACM International Collegiate Programming Contest, все соревнования являются индивидуальными.Часть соревнований проходит в Интернете с частотой несколько раз в месяц (в зависимости от формата), но проводятся также и ежегодные турниры — Top Coder Open и Top Coder Collegiate Challenge (для студентов) с очным финалом и внушительными призовыми фондами. С 2007 года учрежден также Top Coder High School Tournament, то есть турнир для школьников.

Соревнования Top Coder интересны тем, что здесь существует система рейтинга. Дело в том, что все соревнования здесь индивидуальные и каждое участие в онлайновом турнире влияет на рейтинг участника в этом виде соревнований, что существенно повышает интерес и способствует появлению азарта. Рейтинг был придуман корпорацией TopCoder и по его подобию позже были созданы Test The Best и российский Codeforces.

Top Coder Open


Одним из самых популярных видов соревнований является Top Coder Open. Это ежегодный индивидуальный турнир по программированию, который негласно считается чем-то вроде чемпионата мира среди профессионалов. Турнир проводится по системе TopCoder c 2001 года и включает в себя следующие виды соревнований: Algorithm, Design, Development, Marathon, Architecture, Assembly, Testing, Bug Races и Studio. Суммарный призовой фонд Top Coder Open 2011 составлял $150 000 и 100 поездок в Форт-Лодердейл (в зависимости от категории соревнований — либо для участия в финале, либо просто как наблюдатель). Наиболее популярным из состязаний является Algorithm, приз за первое место в этом формате составляет $15 000. Рассмотрим каждый вид соревнований подробнее.

Algorithm Competition


Исторически первый из всех видов соревнований на TopCoder; единственный, результаты которого не имеют никакой практической ценности для организаторов, но очень любимый как участниками, так и спонсорами. Каждый год в этой категории соревнуются около 3 тысяч человек (для сравнения: количество активных участников TopCoder обычно колеблется в районе 5 тысяч человек). Соревнования проводятся в несколько этапов: первые три раунда-квалификации отбирают 2000 участников для основных раундов, затем пять онлайновых раундов постепенно отсеивают худших, пока не остается всего 24 финалиста, соревнующихся за первые места в Лас-Вегасе. Каждый раунд имеет формат стандартного SRM — 3 алгоритмические задачи разной сложности на 75 минут + 15 минут на поиск ошибок в чужих решениях. Подробные правила


Marathon Competition


Этот вид соревнований проходящий под неофициальным девизом «You've never needed all that sleep, anyways». Соревнования проводятся в три раунда, в ходе которых определяются 12 финалистов. В каждом раунде дается одна задача, не имеющая точного решения, и 2 или 4 недели на то, чтобы написать приближенное решение (эвристику), дающее наилучший результат за ограниченное время. Задачи гораздо сложнее, чем в Алгоритмах, и требуют гораздо больше времени для достойного решения, поэтому этот вид пользуется меньшей популярностью — меньше тысячи участников.


Design, Development, Studio и Mod Dash


Эти четыре категории имеют сходную структуру: вместо отдельных турнирных соревнований проводятся те же соревнования, что и обычно (разработка ПО, графический дизайн и исправление багов), призеры которых получают баллы пропорционально сложности заданий. Итоги турнира подводятся в соответствии с количеством баллов, набранных участниками. У каждого отдельного соревнования есть свои призы, независимо от турнирных, поэтому эти категории — самые выгодные. Но и самые сложные — очень уж похоже на обычную работу. В каждой категории обычно участвует до сотни человек.