pengantar
Ada batang pohon Apple diposisikan antara -2 hingga 2 pada sumbu x, di mana beberapa apel jatuh di sekitarnya:
| |
| |
<-------|---|------->
-2 2
Setiap hari, n apel jatuh. Setiap apel mempertahankan koordinat xnya ketika jatuh langsung ke tanah.
Tetapi jika ia mendarat di atas apel lain, ia akan menggelinding sesuai dengan aturan berikut sampai mencapai tanah atau lapisan pendukung apel:
- Jika ruang di x +1 pada ketinggian saat ini kosong, apel saat ini pergi ke sana.
- Lain jika ruang di x-1 kosong apel saat ini pergi ke sana.
- Kalau tidak, apel saat ini tetap berada di atas apel lainnya.
Tantangan
Input akan menjadi n mulai posisi masing-masing apel dalam rangka. Anda bisa menganggapnya sebagai array atau sebagai angka yang terpisah atau dengan cara lain yang valid, pastikan Anda menjelaskannya dalam jawaban Anda.
Outputnya harus berupa gambar ASCII dari batang pohon dan apel di sekitarnya. Anda tidak diharuskan untuk menggambar sumbu x di sebelah kiri apel paling kiri dan di sebelah kanan apel paling kanan, tetapi Anda harus menggambar di mana saja di bawah apel itu. Anda juga dapat memperpanjang pohon di atas apel tertinggi.
Anda dapat mengasumsikan semua koordinat x antara -100 dan 100, tetapi tidak antara -2 dan 2.
Ini adalah kode-golf .. Jawaban terpendek dalam byte menang!
Contohnya
Memasukkan: [-3, 5, 5, -4, -4, 5, -3]
Keluaran:
a| |
aaa| | aaa
---|---|----
Memasukkan: [3, 3, 3, 3, 8, 9]
Keluaran:
| |a
| |aaa aa
|---|-------
Memasukkan: [-5, -5, -5, -5, -5, -5, -5, -5, -5]
Keluaran:
a | |
aaa | |
aaaaa| |
-----|---|
Jawaban:
PHP, 230 byte
Saya telah menambahkan dua baris baru pertama untuk readibility.
Ideone
Ini adalah versi yang tidak dikoleksi:
sumber
Python 2.7, 282 byte
Ideone
Yah ... saya mencoba.
sumber