Cod sursa(job #1141183)

Utilizator catalincraciunCraciun Catalin catalincraciun Data 12 martie 2014 18:10:33
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
/// Craciun Catalin
///  Ciur
///   www.infoarena.ro/problema/ciur
///    Ciurul lui Erastostenes
#include <fstream>
#include <iostream>
#include <bitset>

#define NMax 2000005

using namespace std;

ifstream f("ciur.in");
ofstream g("ciur.out");

long n;
long long prime=0;
bitset<NMax> P;

int main()
{
	f>>n;
	f.close();
	
	for (long i=2;i<=n;i++) P[i]=1;
	for (long i=2;i<=n;i++)
	{
		if (P[i]==1)
		{
			prime++;
			for (long j=i+i;j<=n;j+=i)
				P[j]=0;
		}
	}
	
	g<<prime<<'\n';
	g.close();
	
	return 0;
}