Бронзовая доска на пьедестале статуи Свободы показывает стихотворение « The New Colossus » Эммы Лазарус, часть которой гласит:
Дай мне свою усталость, свою бедность,
Твои толпящиеся массы, жаждущие свободного дыхания,
Несчастный мусор твоего кишащего берега.
Пошлите это, бездомный, буря ко мне,
я поднимаю лампу рядом с золотой дверью!
Чтобы упростить этот раздел стихотворения для этой задачи, мы сделаем все заглавными и заменим символы новой строки на косую черту ( /
), сохраняя запятые и другие знаки пунктуации следующим образом:
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!
Мы назовем эту строку S. Она имеет хэш md5 8c66bbb9684f591c34751661ce9b5cea
. При желании вы можете предположить, что у него есть завершающий символ новой строки, и в этом случае хэш md5 равен 0928ff6581bc207d0938b193321f16e6
.
Напишите программу или функцию, которая принимает одну строку. Когда строка S, выводите по порядку , по одной на строку, шесть фраз, которые описывают тип людей, в стихотворении изображена Леди Либерти с просьбой:
TIRED
POOR
HUDDLED MASSES YEARNING TO BREATHE FREE
WRETCHED REFUSE OF YOUR TEEMING SHORE
HOMELESS
TEMPEST-TOST
(Эта точная строка, за которой может следовать одна завершающая новая строка, должна быть вашим выходом для ввода S.)
По крайней мере , один входной строки, которая не S, результат должен быть любая строка, кроме шести строк выше. Это может быть так же просто, как вывод, только TIRED
если ввод только GIVE ME YOUR TIRED
. Это правило состоит в том, чтобы не допустить чистого жесткого кодирования. В противном случае, когда входная строка не S, ваш код может делать что угодно.
По сути, это задача с постоянным выходом, когда вам дают вход, который относительно близок к выходу. Конечно, вы можете в основном игнорировать ввод и жестко закодировать вывод, но, возможно, лучше, скажем, вырезать подстроки ввода, необходимые для вывода.
Для справки, вот нулевые индексы и длины шести выходных строк в S:
13 5, 25 4, 36 39, 81 37, 136 8, 146 12
Самый короткий код в байтах побеждает.