diff options
Diffstat (limited to 'NTU/ngto4.c')
-rw-r--r-- | NTU/ngto4.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/NTU/ngto4.c b/NTU/ngto4.c new file mode 100644 index 0000000..02237b6 --- /dev/null +++ b/NTU/ngto4.c @@ -0,0 +1,27 @@ +#include <stdio.h> +#include <math.h> + +#define idx(n) (n - 1) / 2 - 1 + +long primes[1000000]; + +int main() +{ + long i, j; + char pdict[500001] = {[0 ... 500000] = 1}; + for (i = 3; i < 1000; i += 2) + if (pdict[idx(i)]) + for (j = i * i; j < 1000000; j += i * 2) + pdict[idx(j)] = 0; + + primes[0] = 2; + j = 0; + for (i = 3; i < 1000000; i += 2) + if (pdict[idx(i)]) + primes[++j] = i; + + printf("%ld ", primes[78497]); + printf("\n%ld\n", j); + + return 0; +} |