Introducción
Invertir y agregar es tan simple como parece, toma n
y agregarlo a sus dígitos en orden inverso. (por ejemplo, 234 + 432 = 666).
Si aplica este proceso repetidamente, algunos números finalmente alcanzarán un número primo, y algunos nunca llegarán a un primo.
Ejemplo
Actualmente tengo
11431 rep.
11431 is not prime
11431 + 13411 = 24842 which is not prime
24842 + 24842 = 49684 which is not prime
49684 + 48694 = 98378 which is not prime
98378 + 87389 = 185767 which is prime!
Este número alcanza un primer
En contraste, cualquier múltiplo de 3 nunca alcanzará un primo, esto se debe a que todos los múltiplos de 3 tienen una suma de dígitos que es un múltiplo de 3 y viceversa. Por lo tanto, invertir y agregar un múltiplo de 3 siempre dará como resultado un nuevo múltiplo de 3 y, por lo tanto, nunca un primo.
Tarea
Toma un entero positivo n
y determine si invertir y sumar repetidamente resultará en un número primo. Salida de un valor verdadero o falso. O la verdad para alcanza un valor primo y falso para no, o al revés, ambas son aceptables.
Se considerará que los números primos alcanzan un número primo en cero iteraciones.
Esto es código golf así que trate de hacer su código lo más corto posible.
Casos de prueba
Verdadero para alcanza una prima falsa para nunca alcanza una prima
11 -> True
11431 -> True
13201 -> True
13360 -> True
13450 -> True
1019410 -> True
1019510 -> True
22 -> False
1431 -> False
15621 -> False
14641 -> False
Insinuación
Mientras escribía este desafío descubrí un truco genial que hace que este problema sea mucho más fácil. No es imposible sin este truco y tampoco es trivial, pero ayuda. Me divertí mucho descubriendo esto, así que lo dejaré en un spoiler a continuación.
Repetir y agregar repetidamente siempre alcanzará un múltiplo de 11 en 6 iteraciones o menos. Si no alcanza un primo antes de alcanzar un múltiplo de 11, nunca alcanzará un primo.