Cod sursa(job #633869)

Utilizator geobarosanu1Tutuianu George geobarosanu1 Data 14 noiembrie 2011 23:19:53
Problema Ciurul lui Eratosthenes Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
// ciurul lui Eratostene
#include <stdio.h>
#include <cstdlib>
bool prim[2000000];

int ciur(long n)
{
	long i,j,nr=0;
	
	for(i=1;i<=n;i++)
		prim[i]=1;
	
	for (i=2;i<=n;i++)
	{
		if (prim[i])
		{
			nr++;
			for (j=i+i;j<=n;j+=i)
				prim[j]=0;
		}
	}
	
	return nr;
}

int main()
{
	long n;

	FILE* f=fopen("ciur.in","rt");
	FILE* g=fopen("ciur.out","wt");

	fscanf(f,"%d", &n);
	fprintf(g,"%d\n",ciur(n));

	fclose(f);
	fclose(g);
	
	return 0;
}