Ctrl K

Снимаем повторяющееся начало

Сложная
Дана строка text из строчных латинских букв. За один ход можно: - стереть всю строку целиком; - или стереть первые i букв, если сразу за ними идут те же i букв (1 ≤ i ≤ len(text) / 2). Например, у строки "cdcde" можно стереть начало "cd", потому что следом снова идёт "cd", и останется "cde". Верните наибольшее число ходов, за которое можно стереть строку полностью.
Пример 1
text="xyxyz" → 2

Снимаем «xy» (за ним снова «xy») и получаем «xyz»; затем стираем остаток. Два хода.

Пример 2
text="bbbb" → 4

Трижды снимаем по одной «b», четвёртым ходом стираем последнюю.

Пример 3
text="abcab" → 1

Ни одно начало не повторяется сразу за собой, остаётся только стереть строку целиком.

Ограничения
  • 1 ≤ len(text) ≤ 4000
  • text состоит из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиФраза из начал слов: длинная версия СложнаяЦель из начал слов СредняяПалиндром дописыванием слева СложнаяЗеркальная нарезка строки СложнаяНачало, совпадающее с концом Сложная
загружаем Python…
Вход
text="xyxyz"
Ожидается
2

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 106 тестов на сервере, включая скрытые.