Cod sursa(job #206166)

Utilizator RegeleUmbrelorPopescu Mihai RegeleUmbrelor Data 4 septembrie 2008 23:25:33
Problema Ciurul lui Eratosthenes Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
using namespace std;
#include<fstream>

int main ()
{
	int N, i, j, phi[1500], nr;
	ifstream in("ciur.in");
	ofstream out("ciur.out");
	in>>N;
	nr=N-1;
	for(i=2;i<=N && i<=1500;++i)
		phi[i]=0;
	for(i=2;i*i<=N;++i)
	{
		if(!phi[i])
		{	
			for(j=i*i;j<=N;j+=i)
			{	
				if(!phi[j])
					nr-=1;
				if(j<1500)
					phi[j]=1;
				
			}	
		}	
	}
	out<<nr;
	in.close();
	out.close();
	return 0;
}