Pagini recente » Cod sursa (job #852422) | Cod sursa (job #3135131) | Cod sursa (job #2776447) | Cod sursa (job #2348685) | Cod sursa (job #410294)
Cod sursa(job #410294)
#include <stdio.h>
FILE *f=fopen ("fact.in", "r");
FILE *g=fopen ("fact.out", "w");
long long i,n,ls,ld,mij,k;
int nzero(int n) {
int nr=0;
while (n/=5)
nr+=n;
return nr;
}
int main() {
fscanf (f, "%d", &n);
ls=5; ld=4000000000;
if (!n)
{
fprintf (g, "1");
return 0;
}
while (1)
{
mij=(ld+ls)/2;
k=nzero(mij);
if (k==n)
{
k=mij-(mij%5);
break;
}
if (k<n)
ls=mij;
if (k>n)
ld=mij;
if (ld==ls+1)
{
k=-1;
break;
}
}
fprintf (g, "%d", k);
return 0;
}