Pagini recente » Cod sursa (job #3284373) | Cod sursa (job #840399) | Cod sursa (job #2611378) | Cod sursa (job #333215) | Cod sursa (job #468222)
Cod sursa(job #468222)
#include <fstream>
#include <iostream>
#define NMAX 1500005
using namespace std;
long long k;
char prm[NMAX];
long long prime[100005];
int main()
{
fstream fin,fout;
fin.open("prim.in",ios::in);
fout.open("prim.out",ios::out);
//fin>>k;
//if(k==1)
// fout<<"2\n";
//else
//{
// prime[0]++;
// prime[prime[0]]=2;
//}
long long n=3,nrprim;
k=1;
long long fk;
fin>>fk;
long long i,j,prim;
prime[0]++;
prime[prime[0]]=2;
for(i=2;i<=NMAX && k<=fk+1;i++)
if(prm[i]==0)
{
k++;
prim=i;
prm[i]=1;
for(j=i+i;j<=NMAX;j=j+i)
if(prm[j]==0)
prm[j]=1;
}
//while(k<=10000)
//{
// long long j;
// for(j=2;j<=prime[0];j++)
// {
// if(n%prime[j]==0)
// break;
// }
// if(j==prime[0]+1)
// {
// nrprim=n;
// k++;
// prime[++prime[0]]=nrprim;
// }
// n+=2;
//}
// _asm
// {
// mov ebx,k
//for1:
// cmp ebx,100005
// ja sfarsit
//
// mov ecx,1
//for2:
// cmp ecx,prime[0]
// ja sfarsitFor2
// mov eax,n
// xor edx,edx
// div prime[ecx]
// cmp edx,0
// je sfarsitFor2
// inc ecx
// jmp for2
//
//sfarsitFor2:
// cmp ecx,prime[0]+1
// je for1
// inc ebx
// inc prime[0]
// mov edx,prime[0]
// //mov prime[eax*8],n
// mov eax,prime
// mov ecx,n
// mov prime[edx*4],ecx
// add n,2
// jmp for1
//
//sfarsit:
//
// };
fout<<prim*prim<<'\n';
//getchar();
return 0;
}