Цель: понять и разобрать пошагово.
Дано digits: 1, 8, 3, 3, 2, 1, 2, 4, 7, 1, 1
Нужно собрать IPv4-адрес: четыре октета, каждый от 0 до 255, используя все цифры ровно один раз.
1) Понимание ограничения по количеству цифр
- Всего 11 цифр. Чтобы разбить на 4 октета по 1–3 цифры, сумма длин октетов должна быть 11.
- Единственная возможная конфигурация: 2 цифры в одном октете и по три цифры в остальных трех октетах, то есть 2-3-3-3.
2) Пробуем составить один из октетов длиной 2
- Выбираем 2-цифровой октет: 18 (используем цифры 1 и 8).
- Осталось цифр: 1,1,1,2,2,3,3,4,7 (то есть 1×3, 2×2, 3×2, 4×1, 7×1).
3) Сформируем три 3-цифровых октета
- Подбор подходящих 3-цифровых чисел не превышающих 255:
- 123 (используем 1, 2, 3)
- 127 (используем 1, 2, 7)
- 134 (используем 1, 3, 4)
- Проверяем распределение цифр:
- 18: 1, 8
- 123: 1, 2, 3
- 127: 1, 2, 7
- 134: 1, 3, 4
- Всего использовано: 1×4, 2×2, 3×2, 4×1, 7×1, 8×1 — совпадает с исходными цифрами.
4) Итоговый IP-адрес
- Один из допустимых вариантов: 18.123.127.134
- Убедимся, что каждый октет в диапазоне 0–255: 18, 123, 127, 134 — все допустимо.
Ответ: 18.123.127.134
Примечание:
- Вариантов может быть несколько, так как можно переставлять 3-цифровые октеты между собой. Если нужно, могу подобрать ещё варианты.