Diberi nomor input n
dari 1
ke 26
(atau 0
ke 25
), output pembacaan alfabet dari kiri ke kanan hingga dan termasuk huruf yang sesuai, dengan a=1, b=2, c=3, ...
. Twist adalah huruf-huruf juga harus diulang secara vertikal sesuai dengan posisi mereka dalam alfabet. Angka ganjil (saat 1
-indeks) harus diseimbangkan melintasi garis horizontal, sementara angka genap harus bergantian antara memilih bagian atas atau bawah (Anda dapat memilih arah mana yang harus duluan). Jika Anda melakukan pengindeksan 0, maka tukar ganjil / genap dalam kalimat sebelumnya.
Dengan kata lain - jika nilai abjad sebuah huruf ?
adalah #
, maka harus ada #
salinan surat itu di output, semuanya ada di #
kolom th. Huruf-huruf ini harus seimbang di atas dan di bawah garis horizontal yang memiliki a
. Jika huruf-huruf tersebut tidak dapat diseimbangkan secara merata, maka ganti memiliki huruf "ekstra" di atas dan di bawah garis itu.
Berikut adalah enam output pertama ( n = 1,2,3,4,5,6
, 1-diindeks, memilih untuk berganti ke bawah dulu), dipisahkan oleh baris baru, sehingga Anda dapat melihat polanya. Komentar yang menjelaskan pola dimulai dengan #
.
a # On a line by itself
ab
b # The "extra" letter is below the horizontal
c
abc # The 'c' splits evenly
bc
d # Because the 'b' was below, the extra 'd' must be above
cd
abcd
bcd
de
cde
abcde # The 'e' balances
bcde
e
def
cdef
abcdef
bcdef
ef
f # Since the 'd' was above, the extra 'f' must be below
(lewati beberapa hingga n=26
)
xyz
wxyz
tuvwxyz
stuvwxyz
pqrstuvwxyz
opqrstuvwxyz
lmnopqrstuvwxyz
klmnopqrstuvwxyz
hijklmnopqrstuvwxyz
ghijklmnopqrstuvwxyz
defghijklmnopqrstuvwxyz
cdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
bcdefghijklmnopqrstuvwxyz
efghijklmnopqrstuvwxyz
fghijklmnopqrstuvwxyz
ijklmnopqrstuvwxyz
jklmnopqrstuvwxyz
mnopqrstuvwxyz
nopqrstuvwxyz
qrstuvwxyz
rstuvwxyz
uvwxyz
vwxyz
yz
z
Aturan
- Anda dapat memilih untuk mengeluarkan dalam huruf besar atau kecil, tetapi harus konsisten.
- Output tidak boleh memiliki spasi putih yang asing, kecuali untuk baris tambahan tambahan opsional.
- Program lengkap atau fungsi dapat diterima.
- Nomor input dapat diambil melalui format yang sesuai .
- Celah standar dilarang.
- Ini adalah kode-golf sehingga semua aturan golf biasa berlaku, dan kode terpendek (dalam byte) menang.
-
untuk menampilkan garis dalam urutan terbalik, yang saya percaya diperbolehkan?x*-(x&2)
berhasil.Pyth , 26 byte
Skor sempurna untuk tantangan tentang alfabet.
Cobalah online!
sumber
Jelly , 25 byte
Cobalah online! atau verifikasi semua kasus uji .
sumber
JavaScript (ES6),
127126 byteMenggunakan trik semacam @ Lynn. Menuliskan seluruh alfabet adalah dua byte lebih murah daripada menghitungnya. Sunting: Disimpan 1 byte berkat @ETHproductions karena saya lupa mencatat bahwa
\n
sebenarnya mewakili karakter baris baru literal. (Saya tidak suka memasukkan baris baru literal ke dalam jawaban saya ketika garisnya sangat panjang.)sumber
btoa`...`
mana...
diganti dengan hasilatob`abcdefghijklmnopqrstuvwxyzz`
. (Juga, Anda dapat mengganti\n
dengan baris baru literal.)