Ctrl K

IP-адреса из цепочки цифр

Средняя
IP-адрес — это четыре целых числа от 0 до 255, записанные через точку. Ведущие нули запрещены: «0» допустимо, а «01» или «00» — нет. Например, «10.0.255.7» — корректный адрес, а «10.256.1.1» и «10.01.1.1» — нет. Из записи адреса потерялись точки, и осталась строка цифр digits. Верните все корректные IP-адреса, которые можно получить, вставив в неё три точки. Переставлять, удалять или добавлять цифры нельзя. Адреса можно вернуть в любом порядке.
Пример 1
digits='10010' → ['1.0.0.10', '10.0.1.0']

Подходят «1.0.0.10» и «10.0.1.0». А, например, «100.1.0» — это только три числа, а «1.00.1.0» не годится из-за ведущего нуля в «00».

Пример 2
digits='7001' → ['7.0.0.1']

Четыре цифры — каждое число по одной цифре, и вариант ровно один: «7.0.0.1».

Пример 3
digits='1234567890123' → []

Тринадцать цифр не уложить в четыре числа по три цифры максимум — адресов нет.

Ограничения
  • 1 ≤ len(digits) ≤ 20
  • digits состоит только из цифр
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлова с кнопочного телефона СредняяВсе правильные скобочные строки СредняяСлово на сетке букв СредняяНарезка слова на палиндромы СредняяПалиндромы из набора букв Средняя
загружаем Python…
Вход
digits='10010'
Ожидается
['1.0.0.10', '10.0.1.0']

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