Divide dos números en sus factoriales; si comparten alguno, devuelva un valor falsey. De lo contrario, devuelva un valor verdadero. (inspirado por esta pregunta reciente )
En otras palabras, escriba cada número de entrada como la suma de factores (de enteros positivos) de la manera más codiciosa posible; devuelve un valor verdadero si no aparece factorial en ambas representaciones, un valor falso de lo contrario.
Ejemplo
Dado 20 y 49:
20 = 3! + 3! + 3! + 2!
49 = 4! + 4! + 1!
No aparece factorial en ambas representaciones, por lo tanto, devuelva un valor verdadero.
Dado 32 y 132:
132 = 5! + 3! + 3!
32 = 4! + 3! + 2!
3! aparece en ambas representaciones, así que devuelve un valor falsey.
I / O
La entrada y salida pueden ser a través de cualquier medio estándar .
La entrada siempre será dos enteros no negativos; sin límite superior en estos enteros que no sea el que requiere su idioma.
La salida debe ser un valor verdadero o falso . Estos valores no necesariamente tienen que ser consistentes para diferentes entradas, siempre y cuando cada salida sea correctamente verdadera / falsa.
Casos de prueba
Si una entrada es 0
, la respuesta siempre será veraz. Otros casos de prueba de verdad:
{6, 3}, {4, 61}, {73, 2}, {12, 1}, {240, 2}, {5, 264}, {2, 91}, {673, 18},
{3, 12}, {72, 10}, {121, 26}, {127, 746}
Si ambas entradas son enteros impares, o si ambas entradas son el mismo entero positivo, entonces la salida siempre será falsa. Otros casos de prueba de falsey:
{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}
Este es el código de golf , ¡por lo que gana menos bytes!