Cod sursa(job #2125291)
Utilizator | Data | 8 februarie 2018 12:47:51 | |
---|---|---|---|
Problema | Factorial | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <fstream>
using namespace std;
ifstream cin ("fact.in");
ofstream cout ("fact.out");
int main()
{
long long n,x,p,cm,nr,m,st,dr,ok=0;
cin>>p;
st=1;
dr=2000000000;
while (st<=dr)
{
m=st+dr;
m/=2;
cm=5;
nr=0;
while (cm<=m)
{
nr=nr+m/cm;
cm*=5;
}
if (nr<p)
st=m+1;
else
if (nr>=p)
{
x=m;
dr=m-1;
}
}
cout<<x;
return 0;
}