Cod sursa(job #306241)

Utilizator Razzoragamita dandanache Razzor Data 20 aprilie 2009 04:06:52
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream.h>
#include <math.h>
long long k=0;
long long nzero(long long m)
{

if ((m%5!=0)||(m>=5))
{
m-=m%5;
k+=m/5;
m/=5;

nzero(m);
}
return k;
}

long long bin(long long li,long long ls,long long p)
{
long long mij,nz;
k=0;
while ((li<=ls) && (p!=mij)){
mij=(li+ls)/2;
nz=nzero(mij);
if  (nz==p) {return mij;}
else if (nz<p) {li=mij+1;}
else  {ls=mij-1;}
}
return -1;
}




int main()
{
long long p,a;
ifstream f("fact.in");
f>>p;
f.close();
ofstream g("fact.out");
if (p==0) {g<<"1";}
else{
a=bin(0,10000000000LL,p);
k=0;
while ((a>1)&&(nzero(a-1)==p))
{a--;k=0;}
g<<a;
g.close();}
return 0;
}