Pagini recente » Cod sursa (job #1931649) | Cod sursa (job #2751253) | Cod sursa (job #1760463) | Cod sursa (job #1465009) | Cod sursa (job #312021)
Cod sursa(job #312021)
#include <stdio.h>
int p;
long long lo = 1, hi = 500000000LL, aux, mid;
bool gasit;
int zero (long long val){
if (val > 5)
return val / 5 + zero (val / 5);
return 0;
}
int main(){
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
scanf ("%d", &p);
if (p == 0) printf("1");
else {
for (; lo < hi; ){
mid = lo + (hi - lo)/2;
aux = zero(mid);
if ( aux == p ) {
mid = mid - mid % 5;
printf("%lld", mid);
gasit = true;
lo = hi;
} else{
if ( aux < p )
lo = mid + 1;
else hi = mid - 1;
};
};
if (gasit != true) printf("-1");
}
return 0;
};