Cod sursa(job #153451)

Utilizator andrei_infoMirestean Andrei andrei_info Data 10 martie 2008 15:47:26
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <fstream.h>
#include <string.h>

ifstream fin ("ciur.in");
ofstream fout("ciur.out");

#define MAX 2000000

int N, cnt;
char prim[MAX];

void solve()
{
	int i,j;
	memset(prim, 0x0F, sizeof(prim));
	prim[1] = 0;
	for (  i = 2; i<=N; i++)
		if ( prim[i] )
			for(cnt++, j = i + i; j<=N; j+=i)
				prim[j] = 0;
}

void afis()
{
	fout<<cnt<<"\n";
	
}


int main()
{
	fin>>N;
	solve();
	afis();

	return 0;
}