Вдохновленный этим вопросом по математике.
Пусть простые множители числа, п , можно представить в виде Р (п) = 2 х 3 б х 5 гр х ... .
(Используя й в качестве символа умножения.)
Тогда число делителей п можно представить в виде D (п) = (а + 1) х (Ь + 1) х (С + 1) ... .
Таким образом, мы можем легко сказать, что число делителей 2n равно D (2n) = (a + 2) x (b + 1) x (c + 1) ... ,
число делителей 3n равно D (3n ) = (а + 1) х (Ь + 2) х (с + 1) ... ,
и так далее.
Вызов:
Напишите программу или функцию, которая использует эти свойства для вычисления n с учетом определенных входных данных делителя.
Входные данные:
Набор целых чисел, назовем их w, x, y, z со всеми следующими определениями:
- все входы больше 1 -
w, x, y, z > 1 - х и г различны -
x<>z - х и z простые -
P(x)=x,D(x)=2иP(z)=z,D(z)=2 - w - число делителей xn -
D(xn)=w - у - число делителей zn -
D(zn)=y
Для проблемы, приведенной в связанном вопросе, может быть входной пример (28, 2, 30, 3). Это переводится как D(2n)=28и D(3n)=30, с n=864.
Выход:
Одно целое число n , удовлетворяющее приведенным выше определениям и входным ограничениям. Если несколько чисел соответствуют определениям, выведите наименьшее. Если такое целое число невозможно, выведите значение Falsey .
Примеры:
(w, x, y, z) => output
(28, 2, 30, 3) => 864
(4, 2, 4, 5) => 3
(12, 5, 12, 23) => 12
(14, 3, 20, 7) => 0 (or some other falsey value)
(45, 13, 60, 11) => 1872
(45, 29, 60, 53) => 4176
Правила:
- Применяются стандартные правила игры в гольф и ограничения на лазейки .
- Применяются стандартные правила ввода / вывода .
- Вводимые цифры могут быть в любом порядке - укажите в своем ответе, какой порядок вы используете.
- Входные числа могут быть в любом подходящем формате: разделенные пробелом, массив, отдельные аргументы функции или аргументы командной строки и т. Д. - на ваш выбор.
- Аналогично, если вывод в STDOUT, окружающий пробел, завершающий перевод строки и т. Д. Являются необязательными.
- Разбор ввода и форматирование вывода не являются интересными особенностями этой задачи.
- В интересах вменяемой сложности и целочисленных переполнений, номер запроса n будет иметь такие ограничения, то
1 < n < 100000есть вам не нужно беспокоиться о возможных ответах за пределами этого диапазона.