Cod sursa(job #648193)
Utilizator | Andrei Hareza fhandrei | Data | 13 decembrie 2011 08:47:13 |
---|---|---|---|
Problema | Frac | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <stdio.h>
int i,n,p,f;
FILE *in,*out;
int cmmdc(int a, int b);
int main(void)
{
in=fopen("frac.in","rt");
out=fopen("frac.out","wt");
fscanf(in,"%d %d", &n, &p);
for(i=1;;i++)
{
if(cmmdc(i,n)>1)
continue;
if(++f==p)
break;
}
fprintf(out,"%d",i);
fclose(in);
fclose(out);
return 0;
}
int cmmdc(int a, int b)
{
int r=a%b;
while(r)
{
a=b;
b=r;
r=a%b;
}
return b;
}