Dalam tantangan ini, Anda diberikan peta medan dua dimensi, dilihat dari samping. Sayangnya, beberapa bagian dari medan mengambang di udara, yang berarti mereka akan runtuh. Tugas Anda adalah memprediksi di mana mereka mendarat.
Input
Input Anda adalah satu atau lebih string yang dipisahkan baris baru dengan panjang yang sama, hanya berisi karakter #
(tanda angka, menandakan batu) atau .
(periode, menandakan ruang kosong).
Hasil
Output Anda memiliki format yang sama dengan input, tetapi dengan modifikasi berikut. Mari kita lihat string input sebagai kisi batuan dua dimensi. Setiap batu di input yang terhubung ke bagian bawah grid oleh jalur batuan yang berdekatan adalah tegas ; batu lainnya longgar . Batuan yang berdekatan secara diagonal tidak dianggap berdekatan. Semua batu lepas akan jatuh lurus ke bawah, dan berakhir sebagai tumpukan di atas batu yang kokoh atau baris bawah. Batuan lepas tidak saling menempel, sehingga jatuh secara individual, bukan sebagai bentukan besar. Outputnya adalah grid yang dihasilkan.
Contohnya
Input
..###. .##.#. .#.... .##.#.
tidak mengandung batu lepas, sehingga hasilnya identik dengan itu.
Input
...#.. .#..#. .#..## .#...# .##### .#...#
berisi satu batu lepas di bagian atas, yang jatuh di atas batu perusahaan di bawahnya. Outputnya adalah
...... .#..#. .#..## .#.#.# .##### .#...#
Input
.#####.... .#....#### ###.###..# #.#...##.. .####..#.# ......###. ..#...#..# ..#...#..#
memiliki sekelompok besar batuan lepas di sebelah kiri. Kelompok itu rusak ketika batu-batu itu jatuh, demikian juga hasilnya
.......... ....###### ..#.###..# . #...##.. .##....#.. .##...#### ####..#..# #####.#..#
Klarifikasi
- Anda dapat mengambil input dari STDIN dan output ke STDOUT, atau menulis fungsi.
- Ini adalah kode-golf, jadi program terpendek (dalam byte) adalah pemenangnya.
- Celah standar tidak diijinkan.