Контест окончен, надеюсь, вам понравилось. Здесь выложен разбор задач.
Язык этого раунда — Befunge, очаровательный двухмерный эзотерический язык программирования. Как для эзотерического, он достаточно лаконичен и удобен в использовании. Так, например, задача "A+B" (числа A и B заданы в отдельных строках) решается вот так:
&&+.@
Для знакомства с языком можно почитать авторскую документацию (в некоторых браузерах отображается с ошибкой) и примеры программ на Rosetta Code. На русском есть статья в Википедии и статья в Прогопедии с разобранными примерами программ.
Система тестирования использует интерпретатор befungee, реализующий диалект Befunge-93. Для запуска интерпретатора необходимо иметь установленный Python (версии 2.6 или около того — в версиях 3.* интерпретатор работать не будет). Следует скачать файлы befungee.py, boards.py
и funge.py
, сохранить их в той же директории, что и исходные коды ваших программ, и запускать программы командой python befungee.py <имя программы на Befunge>
. Обратите внимание на встроенный дебаггер (опция запуска --debug --delay=100
), позволяющий отслеживать перемещения указателя инструкций в ходе выполнения программы.
В качестве локальной альтернативы можно использовать интерпретатор WASABI, требующий для запуска Java. Скачайте архив с интерпретатором, распакуйте его и запускайте среду разработки командой java -jar "Wasabi v1_4.jar" <имя программы на Befunge>
.
Во всех входных данных конец строки обозначается символом #10 (это понадобится для задач, в которых нужно читать данные до конца строки). Значения, возвращаемые вашей программой, проверяются с точностью до пробелов и переводов строк: можно не заканчивать выведенные строки переводами строк, а в задачах, требующих вывести несколько чисел, их можно разделять произвольным количеством пробелов. Кроме того, в конце строки тоже могут быть лишние пробелы.
20 ноября вас ждет очередной, четвертый по счету Unknown Language Round. Правила раунда:
- Индивидуальное нерейтинговое соревнование по правилам ACM ICPC.
- В раунде будет 10 задач, отсортированных по сложности.
- Решения задач принимаются только на одном языке, который будет объявлен в начале контеста.
Это была официальная часть анонса, а теперь - немного лирики.
Этот контест - моих шаловливых лапок дело. Я бы еще очень долго не собралась его сделать, если бы не то, что как раз 20-го ноября у меня день рождения, а я считаю проведение контеста самым идейным способом отметить этот замечательный день :-)
Этот контест будет отличаться от предыдущих - надеюсь, в лучшую сторону. Читатели моего блога на Хабре уже знают меня как большую любительницу экзотики и могут догадаться, что я никогда не позволила бы себе представить в качестве неизвестного языка что-нибудь си-подобное :-) В лучшем случае язык будет императивным, и то не факт. Хотелось бы верить, что этот контест внесет приятное разнообразие в суровые будни спортивных программистов.
Впрочем клятвенно обязуюсь пройти потом испытание в рамках "виртуального контеста". Надеюсь язык будет действительно достаточно марсианским... И также надеюсь что автор в каком-нибудь светлом будущем порадует нас ещё одним подобным контестом! Заранее спасибо! ;-)
(кроме шуток, думаю, все любители подобных мероприятий имеют целый перечень экзотичных языков на которых им бы хотелось поколбаситься)
А еще раунд пересекается с закрытием ВКОШПа.
Но там совсем чуть-чуть. Так что можно написать полностью, но в ИТМО :)
С нетерпением жду этого раунда и глубоко в душе надеюсь, что языком-таки будет что-нибудь вроде J или один из диалектов Л-спа :)
Oh!!!,it rhymes
November 20th is also Vietnam Teacher's Day :)
Вот теперь точно С Днём Рождения!!!!!!!!)))))
ога)
в смысле один ты)
Very awful language.Can't get a bit of it:(
Мой быдлокод ещё никогда не выглядел так красиво ^_@
You might be printing some zeroes somewhere. You can check if this is the case by printing decimals instead of ascii codes.
You are outputting a newline character before the actual answer. So, your output is in the second line. Maybe you are reversing the newline character too.
И — с днём рождения!
извратскомэкзотическом языке.извратыэзотерику.С этой точки зрения практиковаться в познании "нереальных" языков довольно полезно. Типа, расширяет художественную впечатлительность. ;-)
А в задачах типа C длинка не нужна, получается? Эта штука не однобайтовыми числами оперирует?
UPD. Не нужна, конечно, иначе как я сдал А? Тогда у меня претензии к jar-нику, который тут выложили - как минимум он: 1)
при дебаге делает числа от -128 до 127и 2) дает не такой ответ, как сервер CF, на моей посылке задачи E.По первому пункту понял: не надо сохранять значения в ячейки, тогда они действительно по модулю берутся.
Так вот, если посмотреть последние изменения на этой страничке, то язык контеста становился очевиден.
Эти три часа стрессовой нагрузки на обленившийся мозг стоили того, чтобы держать себя целый день в руках.
Ещё раз огромное спасибо за контест и больше так не палитесь :)
Спасибо огромное за контест! давно не получал такого удовольствия от разгадывания пазлов=)
Очень нравятся решения knightL (например по F или D) ровные столбики сильно выделяются среди обычной мешанины символов, а управление в D идет какой-то совершенно неведомой змейкой)
Очень-очень классный контест. Спасибо!
upd Немного не туда комментарий, ну да ладно.
I had a little problem though... This submission is acting strange, it says the program is answering one thing but when i execute it at this site it gives the correct answer. What am I doing wrong?