Pagini recente » Cod sursa (job #2462034) | Borderou de evaluare (job #1567669) | Cod sursa (job #2215819) | Cod sursa (job #2377085) | Cod sursa (job #1771579)
#include <stdio.h>
long long putere(long long n,long long p){
long long pp=p,t=0;
while(pp<=n){
t+=n/pp;
pp*=p;
}
return t;
}
int main(){
FILE *fin=fopen("gfact.in","r");
FILE *fout=fopen("gfact.out","w");
long long p,q,i,pas;
fscanf(fin,"%lld%lld",&p,&q);
pas=1;
for(i=0; i<50; i++)
pas*=2;
i=0;
while(pas!=0){
if(i+pas<=p*q && putere(i+pas,p)<q)
i+=pas;
pas/=2;
}
fprintf(fout,"%lld\n",i+1);
fclose(fin);
fclose(fout);
return 0;
}