Cod sursa(job #515436)

Utilizator truenighttruenight truenight Data 21 decembrie 2010 15:04:42
Problema Ciurul lui Eratosthenes Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.42 kb
#include <stdio.h>

#define N 2000000

int main(void) {

    int n, i, j, cnt = 0;
    char a[N];

    freopen("ciur.in", "r", stdin);
    freopen("ciur.out", "w", stdout);

    scanf("%d", &n);

    for(i = 2; i <= n; ++i)
        a[i] = 1;

    for(i = 2; i <= n; ++i)
        if(a[i]) {
            ++cnt;
            for(j = i + i; j <= n; j += i)
                a[j] = 0;
        }

    printf("%d", cnt);

    return 0;
}