Pagini recente » Istoria paginii runda/forta10b | Cod sursa (job #1687777) | Istoria paginii utilizator/iati2019 | Monitorul de evaluare | Cod sursa (job #222044)
Cod sursa(job #222044)
#include <stdio.h>
#define NMAX 20000005
FILE *fi = fopen("fact.in", "r");
FILE *fo = fopen("fact.out", "w");
unsigned long P, i, k=0;
unsigned int n5(unsigned long N) {
unsigned int k = 0;
while (N%5==0) { k++; N/=5; }
return k;
}
unsigned int V[NMAX];
int main() {
fscanf(fi, "%ld", &P);
if (P==0) fprintf(fo, "1\n");
else {
V[0] = 0;
i = 0;
do { i+=5; V[++k]=V[k-1]+n5(i); } while (V[k]<P);
if (V[k]==P) fprintf(fo, "%d\n", k*5);
else fprintf(fo, "%d\n", -1);
}
fclose(fi);
fclose(fo);
return 0;
}