Pagini recente » Cod sursa (job #2252075) | Cod sursa (job #1692596) | Cod sursa (job #1523422) | Cod sursa (job #565773) | Cod sursa (job #1219276)
#include <stdio.h>
#define FIN "fact.in"
#define FOUT "fact.out"
#define MAXIM 100000000
int nr_zerouri(int n) {
int rez;
for(rez = 0; n / 5 ; rez+=n/5, n/=5){};
return rez;
}
int cautare(int p, int li, int ls) {
int t, rez;
if(li == ls){
if(nr_zerouri(ls) == p){
return li;
} else {
return -1;
}
}
t = (li + ls) / 2;
if(nr_zerouri(t) >= p){
rez = cautare(p, li, t);
} else {
rez = cautare(p, t+1, ls);
}
return rez;
}
int main() {
int p;
FILE *in, *out;
in = fopen(FIN, "rt");
out = fopen(FOUT, "wt");
fscanf(in, "%d", &p);
fprintf(out, "%d", cautare(p, 1, MAXIM));
return 0;
}