Sebuah plakat perunggu di alas Patung Liberty menampilkan puisi " The New Colossus " oleh Emma Lazarus, yang sebagian isinya berbunyi:
Berikan aku lelahmu, malangmu,
kerumunanmu yang ingin bernafas lega,
Sampah yang malang dari pantaimu yang luas.
Kirim ini, tunawisma, tost-tost kepada saya,
saya angkat lampu saya di samping pintu emas!
Untuk menyederhanakan bagian puisi ini untuk tantangan ini, kami akan membuatnya menjadi huruf besar dan mengganti baris baru dengan garis miring ( /
), menjaga koma dan tanda baca lainnya seperti:
GIVE ME YOUR TIRED, YOUR POOR,/YOUR HUDDLED MASSES YEARNING TO BREATHE FREE,/THE WRETCHED REFUSE OF YOUR TEEMING SHORE./SEND THESE, THE HOMELESS, TEMPEST-TOST TO ME,/I LIFT MY LAMP BESIDE THE GOLDEN DOOR!
Kami akan memanggil string ini S. Memiliki hash md5 8c66bbb9684f591c34751661ce9b5cea
. Anda dapat mengasumsikan bahwa ia memiliki baris tambahan, di mana hash md5 adalah 0928ff6581bc207d0938b193321f16e6
.
Tulis program atau fungsi yang menggunakan satu string. Ketika string adalah S, output berurutan , satu per baris, enam frasa yang menggambarkan tipe orang yang dilukiskan oleh puisi Lady Liberty:
TIRED
POOR
HUDDLED MASSES YEARNING TO BREATHE FREE
WRETCHED REFUSE OF YOUR TEEMING SHORE
HOMELESS
TEMPEST-TOST
(String yang tepat ini, opsional diikuti oleh satu baris baru, harus menjadi output Anda untuk input S.)
Untuk setidaknya satu string input yang bukan S, output Anda harus berupa string selain dari enam baris di atas. Ini bisa sesederhana keluaran hanya TIRED
jika inputnya saja GIVE ME YOUR TIRED
. Aturan ini untuk mencegah hardcoding murni. Jika tidak, ketika string input bukan S, kode Anda dapat melakukan apa saja.
Ini pada dasarnya adalah tantangan output konstan di mana Anda diberi input yang relatif dekat dengan output. Anda tentu saja sebagian besar mengabaikan input dan meng-hardcode output, tetapi mungkin lebih baik, misalnya, menghapus substring dari input yang diperlukan untuk output.
Untuk referensi, berikut adalah indeks berbasis nol dan panjang dari enam jalur output di S:
13 5, 25 4, 36 39, 81 37, 136 8, 146 12
Kode terpendek dalam byte menang.