Sebuah sandpile abelian , untuk tujuan kita, adalah jaringan yang tak terbatas dengan koordinat bilangan bulat, awalnya kosong pasir. Setelah setiap detik, sebutir pasir ditempatkan pada (0,0). Setiap kali sel grid memiliki 4 atau lebih butir pasir, ia menumpahkan satu butir pasir ke masing-masing empat tetangganya secara bersamaan. Tetangga (x, y) adalah (x-1, y), (x + 1, y), (x, y-1), dan (x, y + 1).
Ketika sebuah sel tumpah, itu bisa menyebabkan tetangganya tumpah. Beberapa fakta:
- Kaskade ini pada akhirnya akan berhenti.
- Urutan di mana sel-sel tumpah tidak relevan; hasilnya akan sama.
Contoh
Setelah 3 detik, kotak terlihat seperti
.....
.....
..3..
.....
.....
Setelah 4 detik:
.....
..1..
.1.1.
..1..
.....
Setelah 15 detik:
.....
..3..
.333.
..3..
.....
Dan setelah 16 detik:
..1..
.212.
11.11
.212.
..1..
Tantangan
Dalam sesedikit mungkin byte, tulislah fungsi yang mengambil t bilangan bulat positif tunggal dan menghasilkan gambar tumpukan pasir setelah t detik.
Memasukkan
Satu bilangan bulat positif t , dalam format apa pun yang Anda pilih.
Keluaran
Gambar tumpukan pasir setelah t detik, menggunakan karakter
. 1 2 3
Sunting: Gunakan empat karakter berbeda yang Anda suka, atau buat gambar. Jika Anda tidak menggunakan ".123" atau "0123", tentukan dalam jawaban Anda apa yang ditandai oleh karakter.
Tidak seperti dalam contoh, output Anda harus mengandung jumlah minimum baris dan kolom yang diperlukan untuk menunjukkan bagian nol dari sandpile.
Artinya, untuk input 3, output harus
3
Untuk 4, output seharusnya
.1.
1.1
.1.
Mencetak gol
Berlaku standar skor golf.
Aturan
Tidak ada fungsi bahasa atau pustaka yang sudah tahu apa sandpile diperbolehkan.
Sunting: Bagian output telah diedit, batasan set karakter telah sepenuhnya diangkat. Gunakan empat karakter atau warna berbeda yang Anda suka.
.
sel kosong? Bisakah kita memiliki 0
sel kosong yang valid?
0
? Apa ouput itu?