Anda harus menulis program atau fungsi yang menerima volume mangkuk dan volume air di dalamnya sebagai input dan output atau mengembalikan representasi ASCII mangkuk dengan air di dalamnya dengan volume yang diinginkan.
Mangkuk memiliki struktur sebagai berikut:
\ /
\___/
Mangkuk memiliki setidaknya satu _
karakter. Hitungan \
's dan/
' juga positif dan mereka sama karena simetri.
Volume mangkuk adalah jumlah total _
dan space
karakter antara \
's dan /
ditambah satu untuk setiap pasangan \
dan /
. Ini berarti mangkuk di atas memiliki volume 10
:
\ / => xxxxx x (the last one is for the \/ pair)
\___/ xxx x (the last one is for the \/ pair)
Perhatikan bahwa dua mangkuk yang berbeda dapat memiliki volume yang sama. Misalnya kedua mangkuk berikut memiliki volume 18:
\ /
\ / \ /
\___/ \_______/
Kita bisa menuangkan air ke dalam mangkuk. Air direpresentasikan sebagai deretan ~
karakter, bukan spasi di dalam mangkuk. Baris bawah tidak memiliki spasi sehingga tidak dapat berisi ~
's. Ini berarti contoh kita dapat diisi dengan air hanya dengan satu cara:
\~~~~~/
\___/
Mangkuk lain dapat diisi dengan berbagai cara:
\~~~~~/ \ /
\ / \~~~/
\_/ \_/
Volume air dalam mangkuk adalah volume baris mangkuk bawah ini ~
karakter. Contoh di atas memiliki volume air 4, 6 and 2
masing - masing.
Memasukkan
- Dua bilangan bulat positif, volume mangkuk dan volume air.
- Anda dapat memilih urutan dua angka.
- Dua bilangan bulat dapat dimasukkan dalam format daftar umum apa saja (daftar, tupel, array, dll.) Atau sebagai dua bilangan bulat terpisah.
- Setidaknya satu konfigurasi mangkuk-air yang valid dijamin untuk nilai input.
Keluaran
- Representasi ASCII dari mangkuk dengan air di mana mangkuk dan volume air cocok dengan input.
- Jika Anda memilih untuk mengembalikan hasil alih-alih mencetak, hasilnya harus dikembalikan sebagai string tunggal (atau alternatif terdekat bahasa Anda).
- Setiap spasi spasi tambahan diperbolehkan.
- Tidak ada spasi putih terkemuka yang tidak perlu diizinkan.
- Jika ada beberapa konfigurasi yang benar, Anda bebas untuk memilih mana yang Anda hasilkan tetapi Anda hanya bisa menampilkan salah satunya.
Contohnya
Setiap pasangan integer input diikuti oleh satu atau lebih output yang mungkin.
6 2
\~~~/
\_/
10 4
\~~~~~/
\___/
24 8
\ /
\~~~~~~/
\ /
\__/
42 12 //either of the two output is correct
\ /
\ /
\~~~~~~~/
\ /
\ /
\_/
\ /
\~~~~~~~~~~~~~/
\___________/
90 68
\~~~~~~~~~~~~~~~~~~~~~/
\ /
\ /
\ /
\_____________/
102 42
\ /
\ /
\~~~~~~~~~~~~~~~~~/
\ /
\ /
\___________/
Ini kode golf sehingga entri terpendek menang.