Límites factoriales exactos

Dado un entero positivo $number, determina si es exactamente n! para algún entero n.

Si es exacto, devuelve un arreglo que contenga $number y n. De lo contrario, devuelve la cadena "Not exact!".

Ejemplos

is_exact(6); // ➞ [6, 3]

is_exact(24); // ➞ [24, 4]

is_exact(125); // ➞ "Not exact!"

is_exact(720); // ➞ [720, 6]

is_exact(1024); // ➞ "Not exact!"

is_exact(40320); // ➞ [40320, 8]

is_exact(20922789888000); // ➞ [20922789888000, 16]

Notas

  • Todas las entradas son enteros positivos; no es necesario manejar errores.
  • Las entradas pueden ser grandes; mantenlas como enteros.
  • Puedes resolver este desafío de forma recursiva, pero no es obligatorio usar recursión.
  • Hay una versión recursiva de este desafío disponible aquí.