Sebuah akrostik adalah gaya puisi / menulis di mana karakter awal setiap baris, ketika membaca secara vertikal, juga menghasilkan sebuah kata atau pesan. Sebagai contoh,
Together
Everyone
Achieves
More
juga menjabarkan kata TEAM
saat kolom pertama dibaca secara vertikal.
Akrostik adalah himpunan bagian dari mesostik , di mana kata vertikal dapat berada di mana saja dalam kata-kata horisontal. Sebagai contoh, yang di TEAM
atas juga bisa ditulis sebagai mesostik sebagai berikut
togeTher
everyonE
Achieves
More
bersama dengan beberapa variasi lainnya.
Tantangannya di sini adalah menghasilkan akrostik atau mesostik dari daftar kata input yang diberikan.
Memasukkan
- Daftar kata-kata dalam format apa pun yang sesuai .
- Daftar ini hanya akan berisi kata-kata yang dibuat dari huruf kecil
[a-z]
. - Daftar dijamin untuk membentuk akrostik atau mesostik (tidak perlu menangani input palsu).
- Salah satu kata dalam input akan membentuk kata vertikal, sedangkan sisanya membuat kata horizontal - bagian dari tantangan di sini adalah menemukan kata vertikal yang sesuai, sehingga tidak dapat diambil secara terpisah.
Keluaran
- ASCII-art akrostik atau mesostik terbentuk dari kata-kata input, ditulis ke STDOUT atau dikembalikan, dalam format apa pun yang masuk akal.
- Kata vertikal yang sesuai harus ditulis dengan huruf besar (seperti dalam contoh).
- Memimpin ruang untuk mendapatkan kata vertikal untuk berbaris tepat yang diperlukan . Ruang tertinggal, dan garis depan utama / belakang opsional. Ekstra ruang terkemuka baik-baik saja juga, asalkan kata-kata menyelaraskan dengan benar.
- Jika kedua akrostik dan mesostic yang mungkin, keluaran hanya akrostik.
- Jika lebih dari satu akrostik / mesostik dimungkinkan, kode Anda dapat menampilkan salah satu atau semuanya.
Aturan
- Program lengkap atau fungsi dapat diterima.
- Celah standar dilarang.
- Ini adalah kode-golf sehingga semua aturan golf biasa berlaku, dan kode terpendek (dalam byte) menang.
Contohnya
['together', 'team', 'everyone', 'achieves', 'more']
Together
Everyone
Achieves
More
['aaa', 'aaa', 'aaa', 'aaa']
Aaa
Aaa
Aaa
# One output, or multiple (of the same) output is allowed
['aaa', 'aaa', 'aab', 'baa']
Aaa
Aaa
Baa
# This is the only allowed output, since others would be mesostic, which are lower priority
['live', 'every', 'love', 'very', 'ohio']
Live
Ohio
Very
Every
# Note that 'live' couldn't be the vertical word since then it would be a mesostic, which is lower priority output
['cow', 'of', 'fox']
cOw
Fox
# A shorter mesostic test case
['late', 'ballroom', 'anvil', 'to', 'head']
anviL
bAllroom
To
hEad