Abelowa sandpile , dla naszych celów jest nieskończona siatka współrzędnych całkowitych, początkowo pusty piasku. Po każdej sekundzie ziarenko piasku umieszczane jest na (0,0). Ilekroć komórka siatki ma 4 lub więcej ziaren piasku, rozlewa jedno ziarno piasku do każdego z czterech sąsiadów jednocześnie. Sąsiedzi (x, y) to (x-1, y), (x + 1, y), (x, y-1) i (x, y + 1).
Gdy komórka się rozlewa, może to spowodować rozlanie jej sąsiadów. Kilka faktów:
- Ta kaskada ostatecznie się skończy.
- Kolejność rozlewania się komórek jest nieistotna; wynik będzie taki sam.
Przykład
Po 3 sekundach wygląda siatka
.....
.....
..3..
.....
.....
Po 4 sekundach:
.....
..1..
.1.1.
..1..
.....
Po 15 sekundach:
.....
..3..
.333.
..3..
.....
A po 16 sekundach:
..1..
.212.
11.11
.212.
..1..
Wyzwanie
W jak najmniejszej liczbie bajtów napisz funkcję, która przyjmuje pojedynczą dodatnią liczbę całkowitą t i wysyła obraz stosu piasku po t sekundach.
Wejście
Pojedyncza dodatnia liczba całkowita t , w dowolnym wybranym formacie.
Wynik
Zdjęcie stosu piasku po t sekundach przy użyciu znaków
. 1 2 3
Edycja: użyj dowolnych czterech wyraźnych znaków lub narysuj obrazek. Jeśli nie używasz „.123” lub „0123”, podaj w odpowiedzi, co oznaczają znaki.
W przeciwieństwie do przykładów, dane wyjściowe powinny zawierać minimalną liczbę wierszy i kolumn niezbędnych do wyświetlenia niezerowej części sandpile.
Oznacza to, że dla wejścia 3 wyjście powinno być
3
Dla 4 wyjście powinno być
.1.
1.1
.1.
Punktacja
Obowiązuje standardowa punktacja golfowa.
Zasady
Niedozwolone są funkcje językowe i biblioteki, które już wiedzą, co to jest sandpile.
Edycja: Sekcja wyników została edytowana, ograniczenie zestawu znaków zostało całkowicie zniesione. Użyj dowolnych czterech różnych znaków lub kolorów, które lubisz.
.puste komórki? Czy możemy mieć 0jako prawidłową pustą komórkę?









0? Jaki jest zatem wynik?