VK Cup — собственный турнир по спортивному программированию ВКонтакте


Спортивное программирование объединяет турниры самого разного уровня — от школьных и студенческих олимпиад до финалов чемпионата мира. Крупнейшие международные компании организовывают свои контесты и выступают спонсорами авторитетных соревнований вроде ACM-ICPC. Во ВКонтакте работают четыре чемпиона мира по программированию, и в 2017 году уже в четвёртый раз совместно с Codeforces проводился VK Cup — собственный турнир по спортивному программированию ВКонтакте.

Управляющий директор ВКонтакте Андрей Рогозов, основатель Codeforces Михаил Мирзаянов с победителями и призёрами VK Cup 2017

Откуда берутся чемпионы ВКонтакте?

Откуда берутся чемпионы VK Cup ВКонтакте?

Часто всё начинается ещё со школы: олимпиады по информатике, студенческие соревнования, а потом и этапы международных чемпионатов. Спортивное программирование ВКонтакте требует в первую очередь много и изобретательно думать, а не действовать по какому-то стандартному шаблону. Несмотря на это, умение решать олимпиадные задачи тоже нужно тренировать. Сборы, лекции, прорешивание бесконечных наборов задач — всё это в чём-то напоминает подготовку обычных атлетов.

Если Вы уже избрали другой профессиональный путь, не стоит огорчаться. Заглянуть в мир спортивного программирования можно и более простым способом.

На платформе Codeforces ВКонтакте любой желающий может попробовать свои силы в решении задач разного уровня сложности. За каждую решённую в рамках рейтинговых раундов задачу участник получает баллы. На основании этих баллов участники раундов ранжируются и получают рейтинг. После окончания раунда можно прочитать разбор решения, если не удалось найти его самостоятельно. Подборка задач за годы существования проекта скопилась впечатляющая, смотрите сами.

Уверен, что соревнования по программированию — увлекательный и эффективный способ научиться кодить, разобраться в структурах данных и выработать алгоритмическое мышление. Пробуйте участвовать, раунды на Codeforces открыты для всех и проходят каждую неделю. Наша цель — предложить интересные задачи для каждого участника!
Михаил Мирзаянов, основатель Codeforces

Турниры и задачи VK Cup ВКонтакте

Регламент проведения турниров по спортивному программированию ВКонтакте может различаться в деталях, но общие принципы сохраняются. Обычно участникам отводится строго ограниченное время, сами задачи могут быть ранжированы по «стоимости» в зависимости от уровня сложности, а решения оцениваются с помощью набора готовых тестов. Самый популярный язык спортивного программирования — C++, хотя бывают и исключения. Например, на одном из раундов VK Cup 2017 ВКонтакте нужно было решить каждую задачу на отдельном языке.

Соревнования по спортивному программированию могут быть личными и командными, с ограничениями по возрасту участников и без. У турнира ВКонтакте может быть определённая тематика — например, AI, стратегии для биржи или классические алгоритмы. Поставленная задача может заключаться во взломе удалённого сервера или в создании нейросети для хороших результатов на синтетическом датасете.

Создание задач для турниров по спортивному программированию ВКонтакте — отдельное искусство, которое требует от автора не меньшей подготовки, чем у самого участника. Победители прошлых лет часто принимают участие в написании задач для нового турнира. У хорошей задачи есть характерные свойства:

  1. Её можно решить.
  2. Её можно решить в отведённое время.
  3. Для проверки решения можно создать набор тестов, на которых правильное решение будет работать, а неправильное — выдавать ошибку (или не укладываться в ограничения по времени выполнения и объёму памяти).
  4. Она интересная. Олимпиадные задачи не решаются «в лоб», и даже если за условиями проглядывает какой-то фундаментальный алгоритм, придётся как следует подумать, чтобы понять, как именно его здесь применить.

Хотя опытные участники соревнований ВКонтакте видели уже тысячи разных задач и редко запоминают их в деталях, авторы стараются добавить живое описание проблемы. В архиве Codeforces попадаются задачи про пылкий поток любви, «фибоначчиеватость» и хипстера Васю. Как такое пропустить?

После победы в турнире по спортивному программированию ВКонтакте

Победителей престижных соревнований хотят заполучить к себе в штат самые известные IT-компании. Случается, что предложение о работе ждёт участника ещё до подведения итогов контеста.

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

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

Это относится и к работе во ВКонтакте — почти все С-разработчики принимали участие в соревнованиях. ВКонтакте используют самописные базы данных, созданные талантливыми программистами, которые не раз побеждали в самых престижных чемпионатах, включая ACM-ICPC.

Чемпионы ACM-ICPC 2014 — Егор Суворов, Дмитрий Егоров, Павел Кунявский. Тренер Андрей Лопатин. Двое участников этой команды сейчас работают ВКонтакте.

Чемпионы ACM-ICPC 2014 ВКонтакте

VK Cup — собственный турнир по спортивному программированию ВКонтакте

ВКонтакте всегда поддерживал это направление: они были спонсорами обучение олимпиадному программированию в СПбГУ, помогали организовывать Летнюю компьютерную школу, сделали свой вклад в создание Codeforces. Следующим закономерным шагом стала организация собственного турнира VK Cup.

История VK Cup ВКонтакте началась в 2012 году с первого личного состязания. Сейчас кубок проходит в формате турнира для команд из двух человек. Возраст участников ограничен — не младше 14 и не старше 23 лет.

Финал VK Cup 2017 в штабе ВКонтакте

В штабе ВКонтакте. Финал VK Cup 2017.

С марта по июль участники решали задачи отборочных раундов. Из 2736 команд, принявших участие в квалификации, до финала дошли лишь 20 лучших. Финал чемпионата VK Cup ВКонтакте проводился в штабе, Доме Зингера на Невском проспекте. Об итогах VK Cup 2017 мы рассказали в этой статье.

По материалам:
https://vk.com/blog/code-contests

Заберите ссылку на статью к себе, чтобы потом легко её найти ;)

Выберите, то, чем пользуетесь чаще всего:

Спасибо за внимание, оставайтесь на связи! Ниже ссылка на форум и обсуждение ; )

Войдите чтобы комментировать

Обсудить эту статью

INFO: Вы отправляете сообщение как 'Гость'