Ctrl K

Все разложения на множители

Средняя
Дано целое число number. Найдите все способы записать его в виде произведения **двух или более** целых множителей, каждый из которых не меньше 2 и меньше самого number. Каждое разложение запишите списком множителей по неубыванию: [2, 2, 3], а не [3, 2, 2], — так одно и то же разложение не повторится. Верните список всех разложений в любом порядке. Если разложений нет, верните пустой список.
Пример 1
number=18 → [[2, 9], [2, 3, 3], [3, 6]]

18 = 2 · 9 = 3 · 6 = 2 · 3 · 3. Списки можно вернуть в любом порядке, но внутри каждого множители идут по неубыванию.

Пример 2
number=16 → [[2, 8], [2, 2, 4], [2, 2, 2, 2], [4, 4]]

16 = 2 · 8 = 4 · 4 = 2 · 2 · 4 = 2 · 2 · 2 · 2.

Пример 3
number=13 → []

13 — простое число, разложить его на множители больше 1 и меньше 13 нельзя.

Ограничения
  • 1 ≤ number ≤ 10⁷
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлова с кнопочного телефона СредняяВсе правильные скобочные строки СредняяНаборы гирь на точный вес СредняяКарты на точную сумму СредняяВсе расстановки Средняя
загружаем Python…
Вход
number=18
Ожидается
[[2, 9], [2, 3, 3], [3, 6]]

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