Іноді трапляється, що під час введення речення я відволікаюсь і закінчую вводити одну і ту ж пару слів двічі пару слів двічі поспіль.
Щоб переконатися, що інших людей це не турбує, ваше завдання - написати програму, яка вирішить цю проблему!
Завдання
З огляду на рядок введення (якщо це має значення для вашої мови, ви можете припустити, що тільки для ASCII введення, яке не містить ліній передач.) str
, Що містить десь у його середині підрядку, яка виникає двічі в негайній послідовності, поверніть рядок з одним екземпляром цього підрядку видалено
У випадку кількох можливостей поверніть найкоротший можливий варіант відповіді (тобто виберіть найдовший підряд, що повторюється, і повторно видаліть його).
У випадку декількох, однаково довгих послідовних повторів підрядів, видаліть першу (тобто першу, що виникає під час читання рядка спереду назад).
Ви можете припустити, що введення правильне (тобто завжди містить послідовну повторювану підрядку), що може допомогти переграти її.
Приклади
- Вхід:
hello hello world
-> Висновок:hello world
. - Вхід:
foofoo
-> Висновок:foo
. (Отже: так, рядок може складатися з повторюваної частини лише два рази). - Введення:
aaaaa
-> Вихід:,aaa
оскільки тут знаходиться найдовша послідовна послідовна підрядкаaa
. - Вхід:
Slartibartfast
-> Це неправдивий вхід, оскільки він не містить послідовних повторних підрядків, тому вам не потрібно обробляти цей випадок. - Вхід:
the few the bar
-> Це ще один недійсний вхід, оскільки повторювана частина повинна негайно слідувати за початковою частиною. В цьому випадку,the
іthe
відокремлені один від одного ніж - то ще в проміжку між, так що цей вхід є неприпустимим. - Вхід:
ababcbc
-> Висновок:abcbc
. Дві можливі найдовші послідовні повторювані підрядки єab
іbc
. Якab
зустрічається раніше у рядку, ця відповідь є правильною. - Вхід:
Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo
. Вихід:Buffalo buffalo buffalo buffalo Buffalo buffalo
. (Виконана заміна повинна враховувати регістри). - Вхід:
Sometimes it happens that while typing a sentence, I am distracted and I end up typing the same couple of words twice couple of words twice in succession.
-> Висновок:Sometimes it happens that while typing a sentence, I am distracted and I end up typing the same couple of words twice in succession.
. Видаляється лише найдовша послідовна повторювана підрядка.
Ваш код повинен бути якомога коротшим, оскільки це код-гольф , тому найкоротша відповідь у байтах виграє. Удачі!
p
вhappens
Sometimes it happens that while typing a sentence, I am distracted and I end up typing the same couple of words twice couple of words twice in succession.
вхідним, результат повинен бутиSometimes it happens that while typing a sentence, I am distracted and I end up typing the same couple of words twice in succession.
. Видаляється лише найдовше знайдене дублювання.