Поскольку rickrolling является величайшим мемом на Земле, вы [знаете правила и я тоже] должны написать кратчайший код, который может текстуально прокручивать ничего не подозревающего читателя. Пусть [вас вниз] будет входной текст, который содержит буквы, знаки пунктуации и пробелы. Каждый раз, когда в тексте появляется фраза [обмани и обижай] из первых двух строф ...
We're no strangers to love
You know the rules and so do I
A full commitment's what I'm thinking of
You wouldn't get this from any other guy
I just wanna tell you how I'm feeling
Gotta make you understand
Never gonna give you up
Never gonna let you down
Never gonna run around and desert you
Never gonna make you cry
Never gonna say goodbye
Never gonna tell a lie and hurt you
... вставьте оставшуюся часть строки в скобки.
вход
Ввод - это строка из одной строки, содержащая только печатный ASCII с необязательным завершающим переводом строки.
Выход
Вывод - однострочная строка. Каждый раз, когда группа слов (определенная как входная строка, разделенная на пробелы) совпадает с группой слов в строках вышеприведенного текста, вставьте оставшиеся слова строки в строку, сгруппированные в квадратных скобках.
Дополнительное описание:
Это код-гольф , побеждает меньше байтов. Вы можете написать программу или функцию.
- соответствие должно быть без учета регистра:
we'reпреобразуется в,we're [no strangers to love]даже еслиWe'reв тексте используется заглавная буква. - соответствие должно быть жадным.
Does he know the answer?следует преобразоватьDoes he know the [rules and so do I] answer?вместоDoes he know [the rules and so do I] the [rules and so do I] answer? - Если слово присутствует в предоставленной лирике более одного раза, выберите любое из вхождений, чтобы завершить строку.
- Если слово является последним словом в лирической строке, не вставляйте ничего после него.
- Пунктуация включена как часть слова.
I'mявляется одним словом и не может соответствоватьI. Точно так же,you.не соответствует ни одной лирике из-за периода.
Некоторые слова, такие как Iпоявляются несколько раз в тексте, а также в конце строки. Так как правило состоит в том, что может использоваться любое вхождение в вышеупомянутой лирике, и одно из этих вхождений находится в конце строки, сопоставление Iне требуется. Другой вариант для Iэто [just wanna tell you how I'm feeling].
Если два совпадения перекрываются, вы можете выбрать один из них. Это означает , что how I'm thinkingможет стать how I'm [feeling] thinking [of]или how [I'm feeling] I'm thinking [of]с момента I'mможет быть частью либо how I'mили I'm thinking. Если, однако, входной текст был просто I'm thinking, то вывод должен быть I'm thinking [of].
Дополнительные тестовые случаи:
I don't know what I'm doing with my life.
is converted to
I [just wanna tell you how I'm feeling] don't know [the rules and so do I] what I'm [thinking of] doing with my life.
Many additional solutions are possible, since words like `I` appear multiple times.
Will someone please save me from these memes?
is converted to
Will someone please save me from [any other guy] these memes?
Two strangers walked into a bar. One said "hello." The other said "goodbye."
is converted to
Two strangers [to love] walked into a [lie and hurt you] bar. One said "hello." The [rules and so do I] other [guy] said "goodbye."
Задача, вдохновленная этим чуваком .
fromдолжен стать from [any other guy]).