Tugas Anda adalah menguraikan string yang tidak kosong yang terdiri dari karakter ASCII yang dapat dicetak dalam kisaran [32..126] .
Membaca karakter string per karakter:
- setiap kali Anda menemukan huruf dalam huruf kecil, kaitkan dengan huruf berikutnya dalam huruf besar, dimulai dengan 'A'
- setiap kali Anda menemukan huruf dalam huruf besar, ganti dengan huruf dalam huruf kecil yang terkait dengannya
- karakter lain tidak memerlukan pemrosesan khusus dan dibiarkan tidak berubah
Contoh
Untuk string input "endlAsEBAEE"
:
- Kaitkan
e
keA
,n
keB
,d
keC
danl
keD
- Ganti
A
dengane
- Kaitkan
s
keE
- Ganti
EBAEE
dengansness
Output akhir adalah "endlessness"
.
Klarifikasi dan aturan
- String input dijamin mengandung setiap huruf kecil paling banyak satu kali. Semua contoh lebih lanjut akan diganti dengan huruf kapital yang sesuai.
- String input dijamin valid. (Anda tidak akan menemukan huruf kapital yang belum dikaitkan dengan huruf kecil.)
- Setelah huruf kapital dikaitkan dengan huruf kecil, huruf kapital dapat digunakan nanti atau tidak dalam string. Misalnya,
C
danD
tidak digunakan dalam contoh di atas. - Ini adalah kode-golf , jadi jawaban tersingkat dalam byte menang!
Uji kasus
Input:
abcd
honk! ABCD!
abrAcAdABCA
endlAsEBAEE
helCo wDrCd!
dermatoglyphics
progBamFinD AuzJles & cCdL DCKf
sphinx of black quKrtz, jOdge my vGw. K NODLM IPGZE HGF SOWBA GYVP QCV JKRX TGU.
petBr AiABD AEckBd a ABFG of AEFGlBH ABAABDs. hJw mIny AEFGLBH ABAABDM HEH ABCBD AEABD AEFG?
Jawaban:
abcd
honk! honk!
abracadabra
endlessness
hello world!
dermatoglyphics
programming puzzles & code golf
sphinx of black quartz, judge my vow. a quick brown fox jumps over the lazy dog.
peter piper picked a peck of pickled peppers. how many pickled peppers did peter piper pick?
Jawaban:
Jelly ,
87 byteCobalah online!
Bagaimana itu bekerja
sumber
05AB1E , 6 byte
Kode:
Menggunakan penyandian 05AB1E . Cobalah online!
sumber
ʒ.l}Aus‡
.JavaScript (ES6), 62 byte
Setiap huruf besar dikonversi ke nilai dasar 36, kurang dari 10.
Kami kemudian mencocokkan pada huruf kecil yang ada di indeks itu.
Tampilkan cuplikan kode
sumber
Pyth, 36 byte
Coba di sini
Penjelasan
sumber
Stax , 11 byte
Jalankan dan debug itu
sumber
R , 79 byte
Cobalah online!
sumber
scan(,""
untuk menjadikannya sebuah program penuh alih-alih suatu fungsi, selain dari itu saya berjuang untuk menemukan perbaikan ...Perl 5 dengan
-p
, 27 byteCobalah online!
-2 byte terima kasih kepada @breadbox !
sumber
s///gr
dengany///cdr
.Z80Golf , 37 byte
Cobalah online!
Z80 cukup bagus dalam hal ini! Inilah pembongkarannya:
Kami menunjukkan HL dan BC di
$ff00
kisaran dengandec
, dan digunakanrst $38
sebagai alternatif singkatcall $8000
, tetapi jika tidak, tidak ada banyak penipuan yang terjadi.sumber
Retina , 25 byte
Cobalah online!Penjelasan:
Cocokkan huruf kecil.
Ganti setiap huruf dengan rentang kemundurannya sendiri. (Ini mencegah transliterasi dari memperlakukannya sebagai kelas karakter; backslash tidak dapat digunakan karena beberapa huruf kecil memiliki arti khusus setelah backslash.)
Daftar rentang degenerasi, tetapi tanpa pemisah garis, dan dengan pendahulunya
T`L`
.Evaluasi program transliterasi yang dihasilkan pada input asli.
sumber
Python 2 , 78 byte
Cobalah online!
sumber
Java (JDK 10) , 109 byte
Cobalah online!
sumber
C (gcc) , 105 byte
Cobalah online!
sumber
Jelly , 11 byte
Cobalah online!
sumber
Pyth , 7 byte
Fork dari jawaban Jelly yang brilian dari Dennis
Semua testcases.
sumber