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?Odpowiedzi:
81101 bajtówTo może być gra w golfa dalej ...
Wypróbuj online!
źródło
0
ma szansę na wydrukowanie 7/101 (dowolny z<
lub^
pod jego blokiem>
oraz%
symbol i ),1
-8
ma szansę na 10/101 i9
ma szansę na 11/101. Wtedy wygląda na to, że może istnieć szansa, że będzie trwać wiecznie.Utracone , 54 bajty
Wypróbuj online!
Po prostu skopiowałem odpowiedź pppery i zrób kilka przypadkowych rzeczy. Nic nie wiem o Lost language. I nawet nie wiem, co się dzieje z powyższymi kodami. Czy to działa? (Nie wiem)
źródło
-Q
działa? Wyjście wydaje się normalnie rozłożone. Byłoby miło mieć pełną specyfikację języka powiązanego w pytaniu.-Q
działa. Ponieważ język jest przypadkowy, weryfikacja odbywa się poprzez uruchomienie wszystkich możliwości.-Q
robi to i drukuje wszystkie wyniki. Im krótszy program, tym mniej możliwości i mniej wyników-Q
.