Ну, это ж комбинации из простых чисел.
Семь - это считая себя и 1, если исключить 1, то остается 6 делителей.
Если все взятые простые числа разные, то получается количество
комбинаций без учета порядка
1 число - 1 делитель
например 2
2 числа - 3 делителя
например 2, 3, 2*3
3 числа - 7 делителей, многовато
например 2, 3, 5, 2*3, 2*5, 3*5, 2*3*5
Если 2 первых числа одинаковые, то
1 число - 1 делитель
например 2
2 числа - 2 делителя
например, 2, 2*2
3 числа - 5 делителей
например [2x2, 3] => 2, 3, 2*2, 2*3, 2*2*3
4 числа - 9 делителей, многовато
например [2x2, 3, 5] => 2, 3, 5, 2*2, 2*3, 2*5, 2*2*3, 2*2*5, 2*2*3*5
Если первые 3 числа одинаковые, то
1 число - 1 делитель
например 2
2 числа - 2 делителя
например, 2, 2*2
3 числа - 3 делителеля
например [2x3] => 2, 2*2, 2*2*2
4 числа - 7 делителей, опять многовато
например [2x3, 3] => 2, 3, 2*2, 2*3, 2*2*2, 2*2*3, 2*2*2*3
Угу, значит, что должно быть 6 одинаковых чисел, т.е. должно быть
простое число, где 100 <= N^6 <= 999.
2^6 - слишком мало
3^6 - как раз
5^6 - слишком много
Выходит, что ответ - 3^6=729
Вполне в пределах школьной программы, хоть и утомительно.
Для 21 делителя - видимо, аналогично, но надо проводить геморрой с
подсчетом комбинаций дальше. Ну, продолжим.
Для разных чисел:
4 числа - 15 делителей
например 2, 3, 5, 7, 2*3, 2*5, 2*7, 3*5, 3*7, 5*7, 2*3*5, 2*3*7,
2*5*7, 3*5*7, 2*3*5*7
5 чисел - явно будет слищком много делителей
Для 2 одинаковых чисел:
5 чисел - >20 делителей
например [2x2, 3, 5, 7] => 2, 3, 5, 7, 2*2, 2*3, 2*5, 2*7, 3*5, 3*7,
5*7, 2*2*3, 2*2*5, 2*2*7, 2*3*5, 2*3*7, 2*5*7, 3*5*7, 2*2*3*5, 2*2*3*7, ...
Для 3 одинаковых чисел:
5 чисел - 14 делителей
например [2x3, 3, 5] => 2, 3, 5, 2*2, 2*3, 2*5, 2*2*2, 2*2*3, 2*2*5,
2*3*5, 2*2*2*3, 2*2*2*5, 2*2*3*5, 2*2*2*3*5
дальше идти безсполезно, будет слишком много
Для 4 одинаковых чисел:
4 числа - 4 делителя
например [2x4] => 2, 2*2, 2*2*2, 2*2*2*2
5 чисел - 9 делителей
например [2x4, 3] => 2, 3, 2*2, 2*3, 2*2*2, 2*2*3, 2*2*2*2, 2*2*2*3,
2*2*2*2*3
6 чисел - 17 делителей
например [2x4, 3, 5] => 2, 3, 5, 2*2, 2*3, 2*5, 2*2*2, 2*2*3, 2*2*5,
2*3*5, 2*2*2*2, 2*2*2*3, 2*2*2*5, 2*2*3*5, 2*2*2*2*3, 2*2*2*2*5, 2*2*2*3*5
Для 5 одинаковых:
6 чисел - 11 делителей
например [2x5, 3] => 2, 3, 2^2, 2*3, 2^3, 2^2*3, 2^4, 2^3*3, 2^5,
2^4*3, 2^5*3
7 чисел - >20 делителей
например [2x5, 3] => 2, 3, 5, 2^2, 2*3, 2*5, 2^3, 2^2*3, 2^2*5,
2*3*5, 2^4, 2^3*3, 2^3*5, 2^2*3*5, 2^5, 2^4*3, 2^4*5, 2^3*3*5, ...
Дальше можно рассужить логически, что если у нас было K одинаковых
чисел, то добавляя к ним 1 другое число, мы получаем K*2+1 делителей,
что никогда не будет равно 20. То есть, надо переходить к тому, чтобы
второе число тоже брать 2 раза.
[2x2, 3x2] => 2, 3, 2*2, 2*3, 3*3, 2*2*3, 2*3*3, 2*2*3*3 => 8 делителей
[2x2, 3x2, 5] => 2, 3, 5, 2*2, 2*3, 2*5, 3*5, 2*2*3, 2*2*5, 2*3*3,
2*3*5, 3*3*5, 2*2*3*3, 2*2*3*5, 2*3*3*5, 2*2*3*3*5 => 16 делителей
[2x3, 3x2] => 2, 3, 2*2, 2*3, 3*3, 2*2*2, 2*2*3, 2*3*3, 2*2*2*3,
2*2*3*3, 2*2*2*3*3 => 11 делителей
[2x3, 3x2, 5] => 2, 3, 5, 2*2, 2*3, 2*5, 2*2*2, 2*2*3, 2*2*5, 2*3*3,
2*3*5, 3*3*5, 2*2*2*3, 2*2*2*5, 2*2*3*3, 2*2*3*5, 2*3*3*5, 2^3*3^2,
2^3*3*5, 2^2*3^2*5, 2^3*3^2*5 => 21 делитель
[2x4, 3x2] => 2, 3, 2*2, 2*3, 3*3, 2^3, 2^2*3, 2*3^2, 2^4, 2^3*3,
2^2*3^2, 2^4*3, 2^3*3^2, 2^4*3^2 => 14 делителей
Ага, похоже что добавление степени первого числа добавляет 3 делителя (у
нас вышло 8, 11, 14 делителей). Что логично, потому что каждая следующая
степень первого числа (двойки) N добавляет делители 2^N, 2^(N-1)*3,
2^(N-2)*3^2.
Тогда для 20 делителей общая форма числа будет
100 <= A^6 * B*2 <= 999
Самое малелькое число A - это 2, самое маленькое B - это 3.
2^6*3^2 = 576
3^6 = 729, тут дальше ловить нечего
2^6*5^2 = 1600
То есть, 576 - единственное число.
-СБ