Cod sursa(job #356326)

Utilizator matzipanAndrei matzipan Data 14 octombrie 2009 13:39:04
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <fstream>

using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");

unsigned int N,i;
char v[2000000];

long era() {
	unsigned int x,nr,i;
	nr=N-2;
	for(i=2; i<=N; i++)	
		if(v[i]!=0) 
			for(x=2; x*i<N; x++) 
					if(v[x*i]!=0)
						{ nr--; v[x*i]=0; }
	return nr;
}
int main() {
	in>>N;
	for(i=2; i<=N; i++) v[i]=1;
	out<<era();
	return 0;
}