Lost - это двумерный язык программирования, где начальная позиция и направление ip полностью случайны.
Это делает очень трудным создание детерминированных потерянных программ. Однако сегодня мы не пишем детерминированную программу, мы пишем ГСЧ.
Напишите программу Lost, которая не требует ввода и выводит одну цифру (0,1,2,3,4,5,6,7,8 или 9), причем все цифры имеют одинаковую вероятность вывода. Поскольку начальное местоположение и направление Lost являются единственным источником случайности, единственный способ сделать это состоит в том, чтобы каждое местоположение в вашем источнике выводило различное число от 0 до 9 с одинаковым числом, выводящим каждую цифру.
Вы можете вычислить вероятность каждой цифры, используя -Qфлаг и вставляя его в этот скрипт Python.
import sys
a=sys.stdin.read().split()[:-1]
for x in range(10):print x,':',a.count(`x`)
print[x for x in a if x not in list("1234567890")]
Это код-гольф, поэтому ответы будут оцениваться в байтах, причем меньше байтов будет лучше.
Обзор Lost
Lost - это скрытый неявный IO 2D-язык, который берет многое из формы Кляйна. Вот краткий список того, что делают потерянные команды
\,/,|Зеркала IP -<,^,>,vПереводит внутрибрюшинно в направлении[Отражает IP, если он движется на восток; становится]если ip движется горизонтально]Отражает IP, если он движется на запад; становится[если ip движется горизонтально!Пропускает следующую операцию?Выскакивает с вершины стека и прыгает если не ноль:Дублирует вершину стека$Меняет местами два верхних стека(Выскакивает из стека и толкает в прицел)Выскакивает из области и толкает в стек0-9толкает n к вершине стека"Начинает и заканчивает строковый литерал. Во время строки буквальные команды не запускаются и вместо них их символьные значения помещаются в стек.+Добавляет два верхних числа*Умножает два верхних числа-Умножает вершину на -1%Выключает безопасность#Включает безопасность@Завершает выполнение, если безопасность выключена (запускается)
[]действовать как двери, <>указывать в направлениях и ()хранить и отзывать из области видимости. Область используется для хранения значений.
@или есть другие варианты использования? Насчет скобок, я не понимаю эту часть becomes ] if the ip is moving horizontally. Двигаться на восток тоже горизонтально, не так ли?