Vi venir otro gran desafío en PPCG, y realmente me encantan algunos primos. Luego leí mal el texto introductorio, y me pregunté qué habían creado los cerebros creativos aquí.
Resulta que la pregunta planteada era trivial, pero me pregunto si lo mismo puede decirse de la pregunta que leí (mal):
6 puede representarse con 2 ^ 1 * 3 ^ 1, y 50 puede representarse con 2 ^ 1 * 5 ^ 2 (donde ^ indica exponencia).
Tu tarea:
Escriba un programa o función para determinar cuántos primos distintos hay en esta representación de un número.
Entrada:
Un número entero n tal que 1 <n <10 ^ 12, tomado por cualquier método normal.
Salida:
El número de primos distintos que se requieren para representar los factores primos únicos de n.
Casos de prueba:
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 no es una secuencia OEIS.
Puntuación:
Este es el código de golf , ¡la puntuación más baja en bytes gana!
64
el resultado esperado es 1 (2). Me gusta la idea de hacerlo de forma recursiva, pero esa no es la forma en que leo la pregunta original. Pensé que 8640
era un caso de prueba adecuado, pero debería haber sido más explícito, gracias.
64
? ¿Es2 (2,3)
(ya que 6 puede representarse como 2 * 3) o1 (2)
(ignora el 6)?