Cod sursa(job #1670171)

Utilizator bleo16783FMI Bleotiu Cristian bleo16783 Data 31 martie 2016 15:15:41
Problema Ciurul lui Eratosthenes Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<iostream>
#include<bitset>
#include<cmath>
#include<fstream>
using namespace std;
long long n,i,j,nr=1;
bitset<10000000>a;
//a[i]=0=>2i+1=prim;
ifstream f("ciur.in");
int main()
{
    f>>n;
    f.close();
    for(i=1;(i*i)<<1+i<<1<=n;++i)
    {
        if(a[i]<1)
        {
            for(j=(i*i)<<1+i<<1;j<<1<n;j+=i<<1+1)a[j]=1;
        }
    }
    for(i=1;i<<1<n;++i)if(a[i]<1)++nr;
    ofstream g("ciur.out");
    g<<nr;
    g.close();
    return 0;
}