Esto no tiene un propósito práctico, pero podría ser divertido jugar al golf.
Desafío
Dado un número n ,
- Cuente la cantidad de cada dígito en ny agregue 1 a cada recuento
- Tome la factorización prima de n
- Cuente la cantidad de cada dígito en la factorización prima de n , sin incluir primos duplicados
- Cree una nueva lista multiplicando los elementos respectivos de las listas de los pasos 1 y 3
- Devuelve la suma de esa lista
Por ejemplo, 121 tiene dos 1
sy a 2
, por lo que obtendría la siguiente lista del paso 1:
0 1 2 3 4 5 6 7 8 9
1 3 2 1 1 1 1 1 1 1
La factorización prima de 121 es 11 2 , que proporciona la siguiente lista para el paso 3:
0 1 2 3 4 5 6 7 8 9
0 2 0 0 0 0 0 0 0 0
Note como no contamos el exponente. Estos se multiplican para obtener:
0 1 2 3 4 5 6 7 8 9
0 6 0 0 0 0 0 0 0 0
Y la suma de esta lista es 6.
Casos de prueba
1 -> 0
2 -> 2
3 -> 2
4 -> 1
5 -> 2
10 -> 2
13 -> 4
121 -> 6
Notas
- Las lagunas estándar están prohibidas.
- La entrada y salida pueden estar en cualquier formato razonable.
- Debe dejar unos (o ceros para el paso 3) en la lista de dígitos que no aparecen en el número.
- Este es el código de golf , por lo que gana la solución más corta en bytes.
232792560
-> [2,1,4,2,1,2,2,2,1,2]
(paso 1); 2*2*2*2*3*3*5*7*14*17*19
(paso 2); entonces [0,5,1,2,0,1,0,2,0,1]
(paso 3); entonces [0,5,4,4,0,2,0,4,0,2]
(Paso 4); y por lo tanto debería salir 21
.