Cod sursa(job #1459962)

Utilizator mirupetPetcan Miruna mirupet Data 11 iulie 2015 13:13:15
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<cstdio>
#include<bitset>
using namespace std;
bitset<2000001>ciur;
int main()
    {
        int i,j,n,pas;
        freopen("ciur.in","r",stdin);
        freopen("ciur.out","w",stdout);
        scanf("%d",&n);

        int k=1;

        for(i=3;i*i<=n;i+=2)
            if(!ciur[i])
                {
                    k++;
                    pas=2*i;
                    for(j=i*i; j <=n; j+=pas)
                        ciur[j] = 1;
                }
        for (j = i; j <= n; j+=2)
            if(!ciur[j])
                k++;
        printf("%d\n",k);
    }