Eu vi outro desafio principal chegando no PPCG, e eu me amo alguns números primos. Depois, interpretei mal o texto introdutório e me perguntei o que os cérebros criativos haviam inventado.
Acontece que a pergunta feita foi trivial, mas eu me pergunto se o mesmo se aplica à pergunta que eu (mal) li:
6 pode ser representado por 2 ^ 1 * 3 ^ 1 e 50 pode ser representado por 2 ^ 1 * 5 ^ 2 (onde ^ indica exponência).
Sua tarefa:
Escreva um programa ou função para determinar quantos primos distintos existem nessa representação de um número.
Entrada:
Um número inteiro n tal que 1 <n <10 ^ 12, obtido por qualquer método normal.
Resultado:
O número de primos distintos necessários para representar os fatores primos exclusivos de n.
Casos de teste:
Input Factorisation Unique primes in factorisation representation
24 2^3*3^1 2 (2, 3)
126 2^1*3^2*7^1 3 (2, 3, 7)
8 2^3 2 (2, 3)
64 2^6 1 (2) (6 doesn't get factorised further)
72 2^3*3^2 2 (2, 3)
8640 2^6*3^3*5^1 3 (2, 3, 5)
317011968 2^11*3^5*7^2*13^1 6 (2, 3, 5, 7, 11, 13)
27 3^3 1 (3)
Esta não é uma sequência OEIS.
Pontuação:
Isso é código-golfe , a menor pontuação em bytes ganha!
64
o resultado esperado é 1 (2). Gosto da ideia de fazê-lo recursivamente, mas não é assim que leio a pergunta original. Eu pensei que 8640
era um caso de teste adequado, mas deveria ter sido mais explícito - obrigado.
64
? É2 (2,3)
(como 6 pode ser representado como 2 * 3) ou1 (2)
(ignore o 6)?