Контест окончен. 13 человек решили все задачи — это потрясающе!
Разбор задач будет доступен здесь.
Язык сегодняшнего раунда — FALSE, стековый эзотерический язык программирования, придуманный больше 20 лет назад.
Традиционная программа A+B (числа A и B разделены пробелом) выглядит вот так.
Для тестирования своих программ можно:
- скачать исходный код на C авторского интерпретатора здесь. Проверяющая система использует именно этот интерпретатор с опцией -q.
- использовать вкладку "Запуск".
- использовать онлайн-интерпретаторы (отличаются от эталонного интерпретатора, но сильно упрощают отладку): 1, 2.
Полезные ссылки:
- описание языка от автора, Wouter van Oortmerssen
- статья в Прогопедии
- сборник программ в Rosetta Code
Замечания:
- В описании языка фигурируют команды ø и ß. Авторский интерпретатор обозначает их символами O и B (оба онлайн-интерпретатора поддерживают их неизменными).
- Конец файла кодируется как #-1, перевод строки — как #13#10.
- При завершении работы программы стек должен быть пустым, иначе интерпретатор выведет ошибку в стандартный вывод, и это будет считаться неверным ответом.
13 сентября вас ждет Surprise Language Round #7, посвященный Дню программиста.
Правила проведения раунда:
- Соревнование будет нерейтинговым для всех участников.
- Индивидуальное соревнование по правилам ACM ICPC: положение в результатах определяется количеством решенных задач, при равном количестве — набранным штрафным временем. Изначально штрафное время участника равно 0, при каждой сданной задаче оно увеличивается на время, прошедшее с начала контеста, + 20 минут за каждую неудачную посылку до отправки правильного решения. Решение считается правильным, если оно прошло все тесты из предопределенного набора; правильно ли посланное решение, становится известно сразу. Взломов чужих решений нет.
- В раунде будет 8 задач, примерно отсортированных по сложности, и 2 часа на их решение.
- Решения задач принимаются только на одном языке, который будет объявлен в начале контеста. Язык существует давно, а не придуман нами специально для раунда.
- Пожалуйста, в начале контеста перечитайте этот пост целиком: в нем появится объявление языка, рекомендации по установке компилятора (в интерфейсе контеста будет доступен запуск программы онлайн) и полезные ссылки на документацию. В остальном изучение языка — дело рук самого участника. Для решения задач вы можете использовать любые ресурсы (но не совместное участие); ограничиваться документацией, приведенной в посте, не обязательно.
Я надеюсь, что выбранный мной язык будет незнаком большинству участников раунда.