Как стать автором
Обновить

Как стать первым в спортивном программировании: Университет ИТМО делится опытом. Часть 1

Время на прочтение8 мин
Количество просмотров21K
Всего голосов 24: ↑21 и ↓3+18
Комментарии12

Комментарии 12

Для решения задачи с матрицей 3х3 перебор прокатит, а 30х30 — нет.
Тут, видимо, нужно допилить венгерский алгоритм.

В курсе это раскрывается или студенты копошатся в песочнице 3х3?
Уровень задач разный. При желании можно свои варианты обсуждать с организаторами курса. Новые идеи — win-win для всех.
А какие ограничения на таких соревнованиях? Можно ли использовать произвольные языки, скажем Haskell или Prolog? Можно ли при решении одной задачи использовать несколько языков сразу (например подготовка данных на Perl, а основные вычисления на том же Haskell)?
Все зависит от правил конкретного соревнования и компетенций тех, кто оценивает результат :)
Что можете посоветовать среди книг/статей/журналов для поднятия уровня знаний и навыков в области алгоритмов, их применений и оптимизации?
Планируем на эту тему дайджест сделать в начале следующего года. Не переключайтесь :)
Тогда если позволите, небольшой совет-просьба. Включите в дайджест материал от начального и выше уровней. А то обычно пишут — «читал вот это, крутая книга....» начинаешь ее читать и оказывается что перед ней надо еще 2-3 прочитать)
Договорились
Как правило, на соревнованиях автоматическая система тестирования решений. На тестирование присылаются только исходники. Поэтому организаторы должны заранее настроить все компиляторы, определить версии компиляторов и опции, организовать взаимодействие с запускаемой программой (например, для java обеспечить вызов jar, а не exe). Поэтому, вряд ли можно надеяться встретить на соревнованиях Prolog или Haskell.
На Codeforces есть и Perl и Haskell и еще два десятка языков (считая разные версии/реализации).
Несколько языков вместе использовать, правда, нельзя — и слава богу.
В чём проблема компилировать и запускать программы на Haskell?) До сих пор что ли ходит миф, что программы на Haskell никто не запускает, поэтому никто не знает, как это делать?
Недавно участвовал в олимпиаде где был вот такой вот набор языков: Pascal, С++, .NET C#, PHP, Ruby, Python. Для всех языков правила были примерно одни и те же: программа читает данные из файла input.txt в той же директории, а отдает данные в output.txt
Все тесты проверялись автоматически и за каждый неправильный тест начислялись дополнительные 20 минут. Победитель тот, кто решит максимальное число задач за минимальное время.
Были олимпиады где вообще от языка не зависишь. Есть 3 входных txt файла примера и 3 выходных txt файла результата. И есть еще 5 файлов для контрольной проверки. А на каком языке ты получишь результат это не важно.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий