Kebanyakan orang terbiasa dengan kiasan tentang menghitung domba untuk tertidur. Ada kawanan domba, beberapa dari mereka melompati pagar, dan Anda menghitung domba ketika mereka melompat. Seharusnya, ini membantu menenangkan pikiran Anda dan membuat Anda menjadi seperti tidur sehingga Anda akan tertidur.
Inilah domba ASCII yang menghadap ke kanan, menunggu untuk dihitung:
'00^>
||
Inilah seekor domba ASCII yang melompati pagar:
'00^>
/\
++
Ini satu menghadap ke kiri, yang sudah dihitung:
<^00'
||
Tantangan
Diberi dua bilangan bulat input, ndan m, dengan n > 2menggambarkan berapa total domba, dan m > 0mengatakan berapa banyak domba telah dihitung, mengeluarkan representasi seni ASCII untuk menghitung domba yang tertidur.
Sekarang untuk twist:
- Karena ukuran kandang domba, baris atas hanya dapat menampung maksimal
10domba, tidak termasuk domba yang saat ini melompat yang juga harus selalu berada di baris atas. - Baris berikutnya tidak dapat memiliki domba di luar kandang masing-masing (Anda tidak dapat memiliki lebih banyak domba di kiri di baris kedua daripada yang Anda lakukan di baris pertama, dan sama untuk kanan).
- Jika ada
11atau lebih domba total, baris paling atas harus10ditambah dengan domba yang melompat di dalamnya. - Memimpin / mengikuti spasi, dan spasi putih antara domba tidak masalah, asalkan:
- Ada minimal satu karakter spasi putih antara domba
- Semua karakter berbaris dengan tepat.
Selama aturan-aturan ini dipenuhi, pengaturan domba yang sebenarnya terserah implementasi Anda.
Contohnya
Misalnya, ini adalah n=3dan m=1, kasus paling sederhana.
'00^>
'00^> /\ <^00'
|| ++ ||
Inilah n=11dan m=6, domba terbanyak yang dapat ditampung dalam satu garis horizontal.
'00^>
'00^> '00^> '00^> '00^> /\ <^00' <^00' <^00' <^00' <^00' <^00'
|| || || || ++ || || || || || ||
Berikut adalah contoh berbeda dari itu, dengan n=11danm=1
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00'
|| || || || || || || || || ++ ||
Contoh yang lebih besar dengan n=30danm=12
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> <^00' <^00'
|| || || || || || || || || ||
'00^> <^00' <^00'
|| || ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
Inilah contoh dengan n=17danm=2
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || ||
Inilah contoh dengan n=19danm=3
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00' <^00'
|| || || || || || || ++ || || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || || ||
'00^>
||
Perhatikan bahwa semua ini adalah contoh . Untuk yang terakhir, Anda dapat membuat susunan domba vertikal di sisi kanan, yang memungkinkan sisi kiri masuk ke dua baris. Atau mungkin 2 x 2 kuadrat domba di sisi kanan, yang juga akan cocok domba sisi kiri ke dua baris. Dll
I / O dan Aturan
- Input dapat diambil dalam format apa pun yang masuk akal dan dengan metode apa pun yang praktis .
- Leading / trailing newlines atau spasi putih lainnya adalah opsional, asalkan karakternya berbaris dengan tepat.
- Program lengkap atau fungsi dapat diterima. Jika suatu fungsi, Anda dapat mengembalikan output daripada mencetaknya.
- Output bisa ke konsol, dikembalikan sebagai daftar string, dikembalikan sebagai string tunggal, dll.
- Celah standar dilarang.
- Ini adalah kode-golf sehingga semua aturan golf biasa berlaku, dan kode terpendek (dalam byte) menang.
n=11m=9
n=11itu 0<m<=10. Ini memaksa Anda untuk memiliki semua domba di baris atas dan jumlah dinamis domba di pagar kiri ( n-1-m) dan kanan ( m) dan tidak dapat menggunakan ukuran pena tetap.