Cod sursa(job #633843)

Utilizator mirceadinoMircea Popoveniuc mirceadino Data 14 noiembrie 2011 22:28:59
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include<cstdio>
#include<bitset>
#include<vector>
using namespace std;
int main()
{
	bitset<1000000> a; //bitul i ----- 2*i+1
	int i,j,n,m=1;
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n/2;i++)
{
	if(a[i]==0)
	{
		for(j=3*i+1;j<=n/2;j+=2*i+1) a[j]=1;
		m++;
	}
}
//for(i=1;i<=n/2;i++) {j=a[i]; printf("%d - %d\n",j,2*i+1);}
printf("%d",m);
return 0;
}