Cod sursa(job #218766)
| Utilizator | Data | 3 noiembrie 2008 15:30:57 | |
|---|---|---|---|
| Problema | Divizori Primi | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.52 kb |
#include<stdio.h>
#define N 1000005
char prim[N];
int nr[N];
void ciur ()
{
int num=0,d=2,i,j;
for (i=4; i<=N; i=i+2)
prim[i]=1;
for (i=3; i*i<N; i+=2)
{
if (!prim[i])
for(j=i+i+i;j<N; j=j+i+i)
prim[j]=1;
}
}
void citire()
{
int k,num=0,i=2,nrp,j;
scanf("%d",&k);
while (num<k+1)
{
if (!prim[i])
{
++num;
nrp=i;
}
++i;
}
printf("%d\n",nrp*nrp);
}
int main()
{
freopen("divprim.in","r",stdin);
freopen("divprim.out","w",stdout);
ciur();
citire();
}