Cod sursa(job #1141171)

Utilizator catalincraciunCraciun Catalin catalincraciun Data 12 martie 2014 18:02:13
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
/// Craciun Catalin
///  Infoarena
///   Prim
///    www.infoarena.ro/problema/prim
#include <fstream>
#include <iostream>

#define NMax 1300000

using namespace std;

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

long k;
short A[NMax];

long long ciur()
{
	long long primeGasite=0;

	for (long i=2;i<=NMax;i++)
	{
		/// Am gasit un numar prim
		if (A[i]==0)
        {
			primeGasite++;
			/// Dezactivez multiplii
            for (long p=i+i;p<=NMax;p+=i)
                A[p]=1;
        }
        if (primeGasite==k+1)
			return i*i;
	}

	return -1;
}

int main()
{
	f>>k;
	f.close();

	g<<ciur()<<'\n';
	g.close();

	return 0;
}