Cod sursa(job #755276)

Utilizator m.olariuMarius m.olariu Data 5 iunie 2012 09:37:40
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <cstdio>
#include <stdlib.h>

long long binary(long long a, long long b,long long n)
{
long long c = (a+b)/2;
long long sum = 0;
long long aux = c;
while (aux > 0)
{
aux /= 5;
sum += aux;
}

if ((sum != n) && (a>=b))
return -1;
if (sum < n)
return binary((c+1),b,n);
if (sum > n)
return binary(a,c,n);


while (sum == n)
{
 c--;aux = c;
sum = 0;
while (aux > 0)
{
aux /= 5;
sum += aux;
}
}
return c+1;
}

int main()
{
FILE *f = fopen("fact.in","r");
FILE *g = fopen("fact.out","w");

long long n;
fscanf(f,"%lld",&n);


if (n==0)
fprintf(g,"1");
else
fprintf(g,"%lld",binary(1,5000000000,n));

 return 0;
 }