Cod sursa(job #662571)

Utilizator razielreaperMatei Andrei razielreaper Data 16 ianuarie 2012 20:12:04
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<cstdio>
using namespace std;

const char in[]="ciur.in";
const char out[]="ciur.out";

const int N = 2000005;

char v[N];
int nr, n;

int ciur(int n)
{
	for(int i = 2 ; i <= n ; ++i)
		if(!v[i])
		{
		++nr;
		for(int j = i + i ; j <= n; j += i)
			v[j] = true;
		}
	return nr;
}
	
	
	
	

int main()
	{
		freopen(in,"r",stdin);
		freopen(out,"w",stdout);
		
		scanf("%d", &n);
		
		printf("%d\n", ciur(n));
		
		return 0;
}