Pagini recente » Autentificare | Cod sursa (job #1249063) | Cod sursa (job #2782942) | Cod sursa (job #1462544) | Cod sursa (job #1223091)
#include <stdio.h>
#define FIN "fact.in"
#define FOUT "fact.out"
#define MAXIM 200000000
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 ls;
} 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);
//printf("NZ(45)=%d\n", nr_zerouri(1000));
//printf("p=%d\n\n", p);
fprintf(out, "%d", cautare(p, 1, MAXIM));
return 0;
}