Limites fatoriais exatos
Dado um inteiro positivo number, determine se ele é exatamente n! para algum inteiro n.
Se for exato, retorne um array contendo number e n. Caso contrário, retorne um array vazio.
Exemplos
isExact(6) // ➞ [Int64(6), Int64(3)]
isExact(24) // ➞ [Int64(24), Int64(4)]
isExact(125) // ➞ []
isExact(720) // ➞ [Int64(720), Int64(6)]
isExact(1024) // ➞ []
isExact(40320) // ➞ [Int64(40320), Int64(8)]
isExact(20922789888000) // ➞ [Int64(20922789888000), Int64(16)]Notas
- Todas as entradas são inteiros positivos; não é necessário tratar erros.
- As entradas podem ser grandes; use os tipos
Int64mostrados no código inicial. - Você pode resolver este desafio de forma recursiva, mas não é obrigatório usar recursão.
- Uma versão recursiva deste desafio está disponível aqui.