Cod sursa(job #211300)

Utilizator andreea_mandreea martinovici andreea_m Data 1 octombrie 2008 17:56:26
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<fstream>
#include<vector>

using namespace std;

const int N=2000007;

int eratostene(int n)
{
	vector<bool> c(N,true);
	c[0]=c[1]=false;
	for(int i=2;i*i<=n;++i)
		if(c[i])
			for (int j=i*i;j<=n;j+=i)
				c[j]=false;
	int nr=0;
	for(int i=0;i<=n;++i)
		if(c[i])
			++nr;
	return nr;
}

int main()
{
	int n;
	ifstream in("ciur.in");
	ofstream out("ciur.out");
	in>>n;
	out<<eratostene(n);
	return 0;
}