Cod sursa(job #276096)

Utilizator b_polarAgape Mihai b_polar Data 10 martie 2009 20:48:44
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.33 kb
#include<iostream>
#include<bitset>
using namespace std;
bitset <1000001> prime;
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
prime.set();
long a, b, n=0, i, di, j, aux;
cin>>b;
for(i=3;i<=b;i+=2)
         if(prime[(i-3)>>1]){n++;for(di=i+i,j=i+di;j<=b;j+=di)prime[(j-3)>>1]=0;}
cout<<n+(b>=2);
}