Solución

@alexiis-dev·18/6/2026TypeScript
solution.tsTypeScript
function goldbachPair(n: number): number[] {
  const primos = primLess(n);
  const set = new Set(primos);

  for (const primo of primos) {
    const complement = n - primo;

    if (set.has(complement)) {
      return [primo, complement];
    }
  }

  return [];
}

function primLess(n: number): number[] {
  const primo = Array(n).fill(true);
  primo[0] = primo[1] = false;

  for (let i = 2; i * i < n; i++) {
    if (!primo[i]) continue;

    for (let j = i * i; j < n; j += i) {
      primo[j] = false;
    }
  }

  return primo.flatMap((es, i) => es ? [i] : []);
}

// No modificar: necesario para evaluar el resultado.
export { goldbachPair };
0respuestas
Respuestas

Aún no hay respuestas

¡Sé el primero en responder!

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.