Lost to język programowania 2-D, w którym pozycja początkowa i kierunek ip są całkowicie losowe.
To bardzo utrudnia tworzenie deterministycznych programów Lost. Jednak dzisiaj nie piszemy deterministycznego programu, piszemy RNG.
Napisz utracony program, który nie pobiera danych wejściowych i wysyła jedną cyfrę (0,1,2,3,4,5,6,7,8 lub 9), przy czym wszystkie cyfry mają jednakowe prawdopodobieństwo wyprowadzenia. Ponieważ początkowa lokalizacja i kierunek Lost jest jedynym źródłem losowości, jedynym sposobem na zrobienie tego jest umieszczenie w każdej lokalizacji wyjściowej innej liczby od 0 do 9 z równą liczbą wypisującą każdą cyfrę.
Możesz obliczyć prawdopodobieństwo każdej cyfry, używając -Q
flagi i przesyłając ją do tego skryptu Pythona
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")]
To jest golf golfowy, więc odpowiedzi będą liczone w bajtach, przy czym mniej bajtów będzie lepszych.
Przegląd Lost
Lost to zawijający się w sobie język 2D IO, który bierze wiele z formy Kleina. Oto krótki ściągawka tego, co robią utracone polecenia
\
,/
,|
Lusterka OD<
,^
,>
,v
Punkty ip w kierunku[
Odzwierciedla ip, jeśli porusza się na wschód; staje się,]
jeśli ip porusza się w poziomie]
Odzwierciedla ip, jeśli porusza się na zachód; staje się,[
jeśli ip porusza się w poziomie!
Pomija następną operację?
Wyskakuje z góry stosu i skacze, jeśli nie zero:
Duplikuje górę stosu$
Zamienia dwa górne elementy stosu(
Wyskakuje ze stosu i przesuwa się do zakresu)
Wyskakuje z zakresu i przesuwa się na stos0
-9
przesuwa n na górę stosu"
Zaczyna i kończy literał łańcuchowy. Podczas ciągu literalne polecenia nie są uruchamiane, a zamiast tego ich wartości znaków są wypychane na stos.+
Dodaje dwie najlepsze liczby*
Mnoży dwie najlepsze liczby-
Mnoży górę przez -1%
Wyłącza bezpieczeństwo#
Włącza bezpieczeństwo@
Kończy wykonywanie, jeśli bezpieczeństwo jest wyłączone (zaczyna się)
[]
działają jak drzwi, <>
wskazują w kierunkach i ()
przechowują i wycofują się z zakresu. Zakres służy do przechowywania wartości.
@
czy ma inne przypadki użycia? O nawiasach, nie rozumiem tej części: becomes ] if the ip is moving horizontally
. Poruszanie się na wschód jest również horyzontalne, prawda?