Cod sursa(job #660734)

Utilizator raazvvannheghedus razvan raazvvann Data 13 ianuarie 2012 12:40:27
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda winners14.1 Marime 0.44 kb
//ciur
#include <fstream>
#include <math.h>
#include <bitset>
#define dim 2000002

using namespace std;
bitset<dim>prim;
long long i,j,n,np=0;

ifstream f("ciur.in");
ofstream g("ciur.out");
int main()
{
	float r;
	f>>n;
	r=sqrt(n);
	for(i=2;i<=n;i++)
		prim[i]=1;
	for( i=2;i<=r;i++)
		if(prim[i]==1)
		{
			np++;
			for(j=i+i;j<=n;j=j+i)
				prim[j]=0;
		}
	for(i=r+1;i<=n;i++)
		if(prim[i]==1) np++;
	g<<np;
	return 0;
}