Более двух третей тех, кто участвовал в отборочном раунде на Кубок хакеров Facebook в этом году, и из них прошли в 1-й раунд конкурса, который начинается сегодня в 10:00 по восточному времени и длится 24 часа.
Участие в HackerCup стоит не из-за денежных призов и футболок, а потому, что это один из немногих громких конкурсов, который на самом деле посвящен способности создавать и реализовывать алгоритмы. В этом смысле его можно считать конкурентом программиста.
Теперь, когда квалификационный раунд закончился, вопросы, решения и табло доступны на сайте конкурса в Facebook.
Как обычно, было три задачи различной сложности, и 9 276 человек загрузили по крайней мере одну задачу во время квалификационного раунда, и 6581 из них правильно ответили по крайней мере на одну из задач — этого было достаточно, чтобы они прошли в отборочные раунды, в которых вопросы становятся все сложнее и сложнее, и все меньше и меньше участников получают прогресс на отборочных раундах.:
Раунд 1 17 января 10:00 PST (18:00 GMT) длится 24 часа. 500 лучших финишеров перейдут во 2-й раунд.Все, кто наберет такое же количество очков, как и человек, занявший 500-е место, также перейдут во 2-й раунд.
Раунд 2 24 января 13:00 PST (21:00 GMT) длится 3 часа. 100 лучших финишеров перейдут в раунд 3.500 лучших финишеров получат футболки
Раунд 3: 31 января 13:00 по восточному времени (21:00 по Гринвичу) длится 3 часа. Лучшие 25 финалистов будут отправлены в оплачиваемую поездку на финал на месте в штаб-квартире Facebook в Калифорнии 5-6 марта.
Табло говорит о том, что конкуренция в сегодняшнем раунде будет довольно жесткой. Каждый десятый из участников (928) в квалификационном раунде набрал 100 баллов, представив правильные решения всех трех задач, еще 370 набрали 85 баллов, решив две более сложные задачи, и 38 человек квалифицировались, ответив только на самую сложную.
Так в чем же были проблемы:
Приготовление книг — 15 пунктов-Если число длиной до 9 цифр, насколько маленьким или большим оно может быть сделано путем замены двух его цифр?
Новогоднее разрешение — 30 баллов-Набор из 20 кусочков пищи, каждый из которых имеет некоторую фиксированную массу белка, углеводов и жиров, вы должны выбрать подмножество таким образом, чтобы сумма белков, углеводов и жиров в выборе соответствовала заданной цели.
Лазерный лабиринт — 55 точек-это классическая задача поиска пути с изюминкой. Найдите кратчайший путь между двумя точками в лабиринте, который кишит лазерными турелями, которые уничтожат нас, если вы встанете на их линии огня.
Помимо информации, представленной на сайте Facebook, где обсуждается требуемый алгоритм, есть также анализ Soultaker в Tweakblogs, дающий нам всем возможность взглянуть на код (на Python, C и C++), который дает правильные решения.
Если вам интересно, насколько сложнее будут проблемы 1 — го раунда, см. Анализ Soultaker проблем 2013 года-опять же, есть код, а также комментарии, некоторые из которых предоставляют альтернативные подходы.
Это, безусловно, конкурс, который заставляет вас оттачивать свои навыки программирования.