Pagini recente » Cod sursa (job #712694) | Cod sursa (job #2360925) | Cod sursa (job #161303) | Cod sursa (job #566210) | Cod sursa (job #818631)
Cod sursa(job #818631)
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int main()
{ long long mij,nr0,ls,ld,p,p5,max=9000000000000000000;
f>>p;
if(p==0)
{
g<<1;
f.close();
g.close();
return 0;
}
else {
ls=0;
ld=max;
while(ls<ld)
{
mij=(ls+ld)/2;
while(mij%5!=0&&mij%10!=0)mij--;
nr0=0;
p5=1;
while(p5<=mij)
{ p5*=5;
nr0=nr0+mij/p5;
}
if(nr0==p)
{g<<mij;
f.close();
g.close();
return 0;
}
else {if(nr0<p)
ls=mij;
else ld=mij;
}
}
/* for(i=5;i<=n;i+=5)
{ aux=i;
d=0;
while(aux%5==0){d++;aux=aux/5;}
g<<d<<" ";
if(d>2)g<<'\n';
}*/
g<<-1;
f.close();
g.close();
return 0;
}
}
/*
N! numarul de zerouri de la sfarsit
25 6
125 31
625 156
3125 781
15625 3906
78125 19531
390625 97656
1953125 488281
9765625 2441406
48828125 12207031
244140625 61035156
1220703125 305175781
*/