Pagini recente » Cod sursa (job #3162638) | Cod sursa (job #684121) | Cod sursa (job #209650) | Cod sursa (job #2154430) | Cod sursa (job #1430005)
#include <cstdio>
#include <vector>
#include <algorithm>
int nr_zerouri (int x){
int contor = 0;
while (x) {
contor = contor + x/5;
x /= 5;
}
return contor;
}
int caut (int p){
int inceput = 1;
int sfarsit = 500000000;
int mijloc = 0;
while(inceput <= sfarsit){
mijloc = (inceput +sfarsit)/2;
int nrZ=nr_zerouri(mijloc);
if ( nrZ > p){
sfarsit = mijloc-1;
}else if ( nrZ < p){
inceput = mijloc+1;
}
else{
return mijloc / 5 *5;
}
}
return -1;
}
int main () {
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
int p;
scanf("%d", &p);
if( p == 0) printf("1");
else printf("%d", caut(p));
return 0;
}