Cod sursa(job #199850)
| Utilizator | Data | 20 iulie 2008 21:43:21 | |
|---|---|---|---|
| Problema | Frac | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <stdio.h>
#include <math.h>
char a[4294967300];
long i,j,k,n,q,putere=pow(2,32);
int main()
{
FILE *f;
f=fopen("frac.in","r");
fscanf(f,"%ld %ld",&n,&k);
fclose(f);
j=1;i=1;
while (j<k)
{i++;
if (a[i]==0)
if (n%i==0) {for (q=i*i;q<=putere;q=q+i)
a[q]=1;
while (n%i==0)
n=n/2;
}
else j++;
}
f=fopen("frac.out","w");
fprintf(f,"%ld",i);
fclose(f);
return 0;
}
