La respuesta de Tejit responde a su pregunta. Aquí hay un consejo para ahorrar tiempo, ya que este programa puede tardar mucho tiempo en ejecutarse.
Un número primo (por encima de 6) tiene que ser siempre uno menos o uno más que el sexto múltiplo (lo inverso no siempre es cierto). Por lo tanto, solo puede verificar estos números en su algoritmo, 1, 5 y 7 (alrededor de 6), 11 y 13 (alrededor de 12), 17 y 19 (alrededor de 18), etc. Esto reducirá el tiempo necesario para ejecutar el programa aproximadamente 70% porque solo verificará 2 números en cada 6 números.
Además, en el segundo bucle (j bucle en el programa de Tejit) puede simplemente recorrer los números primos hasta i / 2 (Tejit usó todos los números hasta i-1). Por ejemplo, para verificar si 21 es un número primo, puede verificar si el número es múltiplo de cualquier factor primo menor que 21/2, es decir, 10.5 o 10.
Por lo tanto, solo verificará 2, 3, 5 y 7. Solo 4 números para verificar frente a todos los números menores que 21. Esto también puede ahorrar un tiempo significativo en la ejecución.
- ¿Cómo puedo resolver la relación de recurrencia [matemática] F (n) = F (n-1) + 2F (n-2) [/ matemática] dada la siguiente función por partes: F (n) = 1, n = 1 F (n) = 5, n = 2 F (n) = F (n-1) + 2F (n-2), n> = 3?
- ¿Cuánto CS se enseña en matemáticas y la rama de computación en ISM y BHU?
- ¿Cómo funciona el proceso de eliminación en una lista vinculada? ¿Es solo eliminando la referencia del nodo? ¿Qué mecanismo se utiliza para disponer un nodo?
- ¿Qué es un algoritmo para convertir de una matriz de adyacencia a listas de adyacencia?
- ¿Por qué la mayoría de los lenguajes de programación prohíben las "desigualdades sandwich"? En matemáticas, es común ver 'desigualdades en emparedado' que muestran que una cantidad es mayor que otra pero menor que otra, por ejemplo, a <b <c significa lo mismo que a <b && b <c.
Es posible que pueda almacenar los números primos que recuperó en cada paso en una matriz para este propósito o algo así. Lo siento, ya no uso Java y olvidé la sintaxis básica 🙁