Розбийте два числа на їхні фабрики; якщо вони поділяються, поверніть значення фальси. В іншому випадку поверніть значення "truthy". (натхненний цим останнім запитанням )
Іншими словами, кожне вхідне число запишіть як суму фактичних даних (з натуральних цілих чисел) найбільш жадібним можливим способом; повернути триєдине значення, якщо в обох уявленнях не з’являється жодна факторія, а інше значення фальси.
Приклад
Дано 20 та 49:
20 = 3! + 3! + 3! + 2!
49 = 4! + 4! + 1!
В обох уявленнях не з’являється жодна факторіальна база, тому поверніть значення "truthy".
Дано 32 та 132:
132 = 5! + 3! + 3!
32 = 4! + 3! + 2!
3! з'являється в обох поданнях, тому поверніть значення фальси.
I / O
Введення та виведення можна за допомогою будь-яких стандартних засобів .
Вхід завжди буде двома негативними цілими числами; не має верхньої межі цих цілих чисел, окрім того, що вимагає ваша мова.
Вихід повинен мати значення " truthy" або "falsey" . Ці значення необов'язково повинні бути узгодженими для різних вхідних даних, якщо кожен результат є правильним / фальсийним.
Випробування
Якщо один вхід 0
, відповідь завжди буде правдою. Інші справжні тести:
{6, 3}, {4, 61}, {73, 2}, {12, 1}, {240, 2}, {5, 264}, {2, 91}, {673, 18},
{3, 12}, {72, 10}, {121, 26}, {127, 746}
Якщо обидва входи є непарними цілими числами або якщо обидва входи є однаковим додатним цілим числом, то вихід завжди буде помилковим. Інші тести фальси:
{8, 5}, {7, 5}, {27, 47}, {53, 11}, {13, 123}, {75, 77}, {163, 160}, {148, 53},
{225, 178}, {285, 169}, {39, 51}, {207, 334}, {153, 21}, {390, 128}, {506, 584},
{626, 370}, {819, 354}
Це код-гольф , тому виграє найменше байтів!