Cod sursa(job #1200016)

Utilizator tudormaximTudor Maxim tudormaxim Data 21 iunie 2014 15:37:38
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <cstdio>
#define L 2000001
using namespace std;

int main()
{
    freopen("ciur.in","r",stdin);
    freopen("ciur.out","w",stdout);
    int i,j,x,nr=0;
    bool ciur[L];
    scanf("%d",&x);
    for(i=2;i<=x;i++)
        ciur[i]=1;
    for(i=2;i*i<=x;i++)
    {
        if(ciur[i])
        {
            for(j=2;j*i<=x;j++)
                ciur[i*j]=0;
        }
    }
    for(i=2;i<=x;i++)
        if(ciur[i])nr++;
    printf("%ld\n",nr);
    fclose(stdin);
    fclose(stdout);
    return 0;
}