Ctrl K

Уравнять частоты букв

Сложная
Дана строка text из строчных латинских букв. Назовём строку **ровной**, если все буквы, которые в ней встречаются, встречаются одинаковое число раз. Со строкой можно сколько угодно раз делать такие действия, каждое стоит 1: - удалить любую букву; - вставить любую букву в любое место; - заменить букву на **следующую** по алфавиту (например, c на d). Букву z так заменить нельзя — по кругу алфавит не идёт. Верните наименьшее число действий, после которых text станет ровной.
Пример 1
text='xxyyy' → 1

Удаляем одну букву y — получаем «xxyy», где x и y встречаются по два раза.

Пример 2
text='mmmmnn' → 1

Заменяем одну m на следующую букву n: в «mmmnnn» обе буквы встречаются по три раза. Хватает одного действия.

Пример 3
text='kkmm' → 0

Буквы k и m уже встречаются по два раза, менять ничего не нужно.

Ограничения
  • 3 ≤ text.length ≤ 2 · 10⁴
  • text состоит только из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиДлина разросшегося слова СложнаяПары подстрок с одной опечаткой СредняяРовные куски строки СредняяРастущая строка СредняяВсе способы расставить пробелы Сложная
загружаем Python…
Вход
text='xxyyy'
Ожидается
1

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