Cod sursa(job #245140)

Utilizator mottyMatei-Dan Epure motty Data 16 ianuarie 2009 22:09:24
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include<stdio.h>

const int N=2000001;

int n,k;

bool v[N];

void ciur()
{
	int i,j;
	for( i=2 ; i*i<=n ; ++i )
		if(v[i]==0)
			for( j=i+i ; j<=n ; j+=i )
				v[j]=1;
}

void calcul()
{
	int i;
	for( i=2 ; i<=n ; ++i )
		if( v[i]==0 )
			++k;
	printf("%d\n",k);
}

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