Cod sursa(job #790623)

Utilizator vld7Campeanu Vlad vld7 Data 21 septembrie 2012 22:35:55
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <cstdio>

#define maxN 2000005

using namespace std;

FILE *f = fopen ("ciur.in","r");
FILE *g = fopen ("ciur.out","w");

int n, sol;
bool prim[maxN];

int main()
{
	fscanf (f, "%d", &n);
	
	for (int i = 2; i <= n; i++)
		prim[i] = true;
	for (int i = 2; i * i <= n; i++)
		if (prim[i]) {
			for (int j = i * i; j <= n; j += i)
				prim[j] = 0;
		}
		
	for (int i = 2; i <= n; i++)
		if (prim[i])
			sol++;
	fprintf (g, "%d\n", sol);
	
	fclose(f);
	fclose(g);
	
	return 0;
}