Ctrl K

Довести пароль до надёжного

Сложная
Политика безопасности считает пароль надёжным, если одновременно: - его длина от 6 до 20 символов включительно; - в нём есть хотя бы одна строчная латинская буква, хотя бы одна заглавная и хотя бы одна цифра; - в нём нигде не стоят три одинаковых символа подряд (xAaaa1 — нельзя, xAaxa1 — можно). За одну правку можно вставить в пароль символ, удалить символ или заменить один символ на другой. Дана строка password. Верните наименьшее число правок, после которых пароль станет надёжным. Если он уже надёжный, верните 0.
Пример 1
password='ab' → 4

Пароль короче шести символов на 4, а ещё в нём нет заглавной буквы и цифры. Четыре вставки решают всё сразу, например abC12x.

Пример 2
password='Qwerty1111' → 1

Длина и типы символов в порядке, но четыре единицы подряд нарушают правило. Достаточно заменить одну из них: Qwerty11x1.

Пример 3
password='Spring.Day.2026' → 0

Пароль уже надёжный.

Ограничения
  • 1 ≤ password.length ≤ 100
  • password состоит из печатных ASCII-символов без пробела (коды от 33 до 126)
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиОдинаковые буквы на расстоянии СложнаяБез одинаковых соседей СредняяТри буквы без тройных повторов СредняяНаибольшая строка без длинных повторов СредняяЗаполнить пропуски с минимумом повторов Средняя
загружаем Python…
Вход
password='ab'
Ожидается
4

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