Diberikan daftar input string yang tidak kosong, menampilkan representasi seni ASCII dari turnamen, berdasarkan aturan gambar berikut:
- Jumlah string dijamin dari kuantitas
2,4,8,16,etc.
- Dua dawai pertama saling bermain, dan dua dawai berikutnya saling bermain, dan seterusnya. Ini babak pertama.
- Untuk setiap game, pilih pemenang secara acak dengan probabilitas yang sama.
- Untuk babak selanjutnya, pemenang game pertama memainkan pemenang game kedua, pemenang game ketiga memainkan pemenang game keempat, dan seterusnya. Putaran selanjutnya mengikuti pola.
- Akhirnya ada satu pemenang keseluruhan.
- Untuk output yang cantik (wajib), string-string tersebut harus di-prepended dan ditambahkan dengan garis bawah
_
. - Agar tanda kurung sejajar dengan tepat, setiap entri harus diisi dengan
_
panjang yang sama untuk putaran itu. - Anda dapat memilih apakah padding didahulukan atau ditambahkan, asalkan konsisten.
- Sebagai gantinya, Anda dapat memilih untuk melakukan pra-pad semua string dengan panjang yang sama, daripada setiap putaran. Yang mana pun pemain golf untuk kode Anda.
Aturan selanjutnya
- Leading atau trailing newlines atau whitespace semuanya opsional, asalkan karakter itu sendiri berbaris dengan benar.
- Program lengkap atau fungsi dapat diterima. Jika suatu fungsi, Anda dapat mengembalikan output daripada mencetaknya.
- Jika memungkinkan, harap sertakan tautan ke lingkungan pengujian online sehingga orang lain dapat mencoba kode Anda!
- Celah standar dilarang.
- Ini adalah kode-golf sehingga semua aturan golf biasa berlaku, dan kode terpendek (dalam byte) menang.
Contohnya
Contoh dengan kota ['Boston', 'New York', 'Charlotte', 'Atlanta', 'St. Paul', 'Chicago', 'Los Angeles', 'Phoenix']
:
_Boston______
\_New York____
_New York____/ \
\_New York_
_Charlotte___ / \
\_Charlotte___/ \
_Atlanta_____/ \
\_St. Paul_
_St. Paul____ /
\_St. Paul____ /
_Chicago_____/ \ /
\_St. Paul_/
_Los Angeles_ /
\_Los Angeles_/
_Phoenix_____/
Contoh dengan ['Lions', 'Tigers', 'Bears', 'Oh My']
:
_Lions__
\_Tigers_
_Tigers_/ \
\_Tigers_
_Bears__ /
\_Bears__/
_Oh My__/
Jawaban:
Arang ,
9279 byteCobalah online!Tautan adalah untuk mengucapkan versi kode. Membutuhkan baris kosong untuk menandai akhir input. Penjelasan:
Inisialisasi variabel
q
. Ini memegang ukuran zig-zag yaitu setengah celah antara baris.Baca jalur input nonblank ke dalam array
u
. Garis-garis secara otomatis dikelilingi oleh_
s ketika mereka dibaca, meskipun mereka belum diisi.Loop sementara masih ada string yang tersisa.
Hitung lebar string terbesar di
e
.Hitung jarak antar baris
d
.Untuk setiap tim, cetak padding, cetak tim, dan kemudian pindah ke tim berikutnya.
Untuk setiap tim lain, pilih secara acak antara tim itu atau tim sebelumnya. (Perhatikan bahwa jika hanya ada satu tim yang tersisa maka ini menghasilkan daftar kosong.)
Jika masih ada tim yang tersisa, buat zig-zag bergabung dengan mereka berpasangan.
Gandakan panjang zig-zag setiap kali.
sumber
▷vS
sesuatu untuk itu.Python 2 ,
379364 byteCobalah online!
sumber