Pagini recente » Cod sursa (job #2698908) | Cod sursa (job #400792) | Cod sursa (job #1493493) | Cod sursa (job #1366425) | Cod sursa (job #2386349)
#include <fstream>
#include<climits>
using namespace std;
ifstream fin ("fact.in");
ofstream fout ("fact.out");
long long int p;
long long st=1, dr=(long long)(1 << 30) * (1 << 30), val, k, mij;
long long zero(long long n)
{
long long int nr=0, x=5;
while(x<=n)
{
nr+=n/x;
x*=5;
}
return nr;
}
int main()
{
fin>>p;
//fout<<zero(p);
// fout<<st<<"\n";
//fout<<dr<<"\n";
k=-1;
if(k==0){fout<<"1\n"; return 0;}
while(st<=dr)
{
mij=(st+dr)/2;
val=zero(mij);
if(val==p)
{
k=mij;
dr=mij-1;
}
if(val>p)dr=mij-1;
if(val<p)st=mij+1;
}
fout<<k<<"\n";
return 0;
}