Recursão: limites fatoriais exatos

Crie uma função recursiva que teste se um número é o limite superior exato do fatorial de n. Se for, retorne uma lista que contém o limite fatorial exato e n; caso contrário, a string "Not exact!".

Exemplos

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]

Observações

  • Espera-se que os participantes do desafio criem uma solução usando o conceito de recursão ou a chamada abordagem recursiva.
  • Você pode ler mais sobre recursão (consulte a aba Resources) se ainda não estiver familiarizado com ela ou não tiver compreendido completamente o conceito antes de realizar este desafio.
  • Não haverá exceções para tratar. Todas as entradas são números inteiros positivos.
  • Uma versão não recursiva deste desafio (de menor dificuldade e que oferece total liberdade para não usar a abordagem recursiva) pode ser encontrada aqui.