This is Markov.
Markov's golf ball rolls around randomly.
Markov's ball will hole however he strikes it.
Markov is smart.
Be like Markov.
A to
jest mrowisko na podwórku Langtona.
Mrowisko jest wystarczająco duże, aby pomieścić piłkę golfową Markova, MarGolf. Jednak mrowisko porusza się i zmienia kierunek w zależności od otaczającego terenu.
Zadanie
Wprowadź wartość pola 10 x 20:
*
MarGolfO
Lanton's Anthill,
Anthill skręca o 90 stopni w prawo.
Anthill skręca o 90 stopni w lewo0
MarGolf w Langton's Anthill
Pole wygląda następująco:
,...,.,,..,...,.,,..
..,.,,,..,...,..,.,.
.,,*.,....,.,,,.,,,.
,.,,.,...,,.,.,,,,,.
.,..,....,,.....,,.,
,.,.,...,..,.,,,,..,
....,,,,,,,,,.......
........,,.,...,...,
,,,,,,,,,,,,....,O.,
,.,.,.,.....,,.,,,,,
Zasady gry:
konfiguracja pola wejściowego nazywa się tikiem 0. Twój program musi ocenić i wydrukować konfigurację następnego tiksu, w którym zarówno MarGolf, jak i Langton's Anthill zostaną przeniesione do innej komórki. Element w bieżącej komórce stanie się elementem znajdującym się obecnie w komórce docelowej. Jeśli zarówno MarGolf, jak i mrowisko przeniosą się do tej samej komórki w następnym tiku, gra się kończy.
Zasady ruchu:
- MarGolf porusza się losowo. Wszystkie dziewięć komórek w obszarze 3x3 wokół MarGolf ma równe szanse na wybór. Staje się to wyborem spośród 6 komórek na brzegu pola i 4 komórek w rogu.
- Langhill's Anthill musi pamiętać o swoim kierunku ruchu w górę, w dół, w lewo lub w prawo (NSEW lub inny równoważny). Porusza każdą komórkę w każdym kierunku zaznaczenia, a pierwotna zawartość komórki zmienia kierunek zgodnie z ruchem wskazówek zegara lub przeciwnie do ruchu wskazówek zegara, jak określono powyżej. Kierunek początkowy przy tiku 0 jest losowy, każdy kierunek ma równe szanse bycia początkowym.
Notatki
- Program musi wydrukować konfigurację każdego ticka, aż do zakończenia gry.
- Numer podziałki poprzedza konfigurację pola dla każdego podziałki.
- Możesz założyć, że dane wejściowe są zawsze prawidłowe.
- Najkrótszy program to bajty wygrane.
Aktualizacja: zapomniałem wspomnieć, że mrowisko odwraca kierunek przed przemieszczeniem się, jeśli inaczej spadłoby z pola. Kredyt dla użytkownika 81655 za przypomnienie.
O
kierunek s dla następnego kroku.Odpowiedzi:
Java 10,
611609607593591 bajtów-4 bajty dzięki @ceilingcat .
Zakłada ostateczną zamianę
*
iO
opróżnia komórkę, z której*
pochodzi.Wyjaśnienie:
Wypróbuj online.
źródło