Ctrl K

Самый длинный отрезок, собираемый в палиндром

Сложная
Дана строка digits из цифр. Найдите самый длинный непустой отрезок (подряд идущие символы), цифры которого можно переставить так, чтобы получился палиндром — строка, читающаяся одинаково слева направо и справа налево. Верните длину этого отрезка.
Пример 1
digits="4747123" → 5

Отрезок "47471" можно переставить в палиндром "47174": четвёрок и семёрок по две, единица одна и встанет в центр. Длиннее не выйдет: в "474712" уже две цифры встречаются нечётное число раз.

Пример 2
digits="908" → 1

Все цифры разные, так что подходит только отрезок из одной цифры.

Пример 3
digits="1221" → 4

Вся строка уже палиндром.

Ограничения
  • 1 ≤ len(digits) ≤ 10⁵
  • digits состоит только из цифр 0–9
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлова для головоломок СложнаяИмена с обменом первых букв СложнаяПовторяющиеся участки гена СредняяПеремешать в палиндром ЛёгкаяПодброшенная буква Лёгкая
загружаем Python…
Вход
digits="4747123"
Ожидается
5

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