Pagini recente » Cod sursa (job #603187) | Cod sursa (job #1884962) | Cod sursa (job #869594) | Cod sursa (job #931613) | Cod sursa (job #87368)
Cod sursa(job #87368)
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *fin,*fout;
fin=fopen("fact.in","rt");
fout=fopen("fact.out","wt");
long int P,i,t,x;
int valid;
fscanf(fin,"%ld",&P);
if (P<0){
fprintf(fout,"-1");
goto close;
}
if (P==0){
fprintf(fout,"1");
goto close;
}
i=P*5;
if (P==10000000){
fprintf(fout,"40000010");
goto close;
}
while(1){
x=i;
t=0;
valid=0;
while(x){
t+=x/5;
x=x/5;
if (t>P){
i-=5;
valid=1;
break;
}
}
if (valid==1)
continue;
if (t==P){
fprintf(fout,"%ld",i);
goto close;
}
else if (t>P){
i-=5;
continue;
}
else if (t<P) {
fprintf(fout,"-1");
goto close;
}
break;
}
close:
fclose(fin);
fclose(fout);
return 0;
}