Pagini recente » Cod sursa (job #3292057) | Cod sursa (job #2290545) | Cod sursa (job #112325) | Cod sursa (job #2484150) | Cod sursa (job #115884)
Cod sursa(job #115884)
#include <stdio.h>
long int p;
long int nrZero(long int n){
long int x = 0, cinci = 5,t;
while (t=n/cinci) {
x = x + t;
cinci = cinci*5;
}
return x;
}
long int prim, ultim, m;
int main(){
FILE *f=fopen("fact.in","r");
fscanf(f,"%ld",&p);
fclose(f);
prim=1;
ultim=1ul<<32-2;
while (prim<=ultim) {
m = (prim+ultim)/2;
if (nrZero(m)<p) prim = m+1;
else ultim = m-1;
}
// printf("\n%ld", prim);
FILE *g=fopen("fact.out","w");
if (nrZero(prim)==p)
fprintf(g,"%ld",prim);
else
fprintf(g,"%ld",-1);
return 0;
}