Cod sursa(job #658601)

Utilizator paunmatei7FMI Paun Matei paunmatei7 Data 9 ianuarie 2012 10:34:16
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda winners10.1 Marime 0.4 kb
#include<stdio.h>
#include<math.h>
char v[2000001];
long n;
void ciur(long n)
{
	long i,j;
	v[0]=v[1]='1';
	for (i=4;i<=n;i=i+2)
		v[i]='1';
	for (i=3;i<=sqrt(n);i=i+2)
		if (v[i]==0)
			for (j=i*2;j<=n;j=j+i)
				v[j]='1';
}
int main()
{
	freopen("ciur.in","r",stdin);
	freopen("ciur.out","w",stdout);
	scanf("%ld",&n);
	long nr,i;
	ciur(n);
	for (i=1;i<=n;i++)
		if (v[i]==0)
			nr++;
	printf("%ld",nr);
}