Pagini recente » Cod sursa (job #2189223) | Cod sursa (job #2478545) | Cod sursa (job #1008321) | Cod sursa (job #2193983) | Cod sursa (job #521351)
Cod sursa(job #521351)
#include<iostream>
#include<fstream>
using namespace std;
long p;
int bins(long long st, long long dr)
{
long long cp,m,s=0;
while(st<dr)
{
s=0;
m=(st+dr)/2;
cp=m;
while(cp!=0)
{s=s+cp/5;
cp=cp/5;
}
if(s==p) return m;
if(s>p) dr=m-1;
else st=m+1;
}
return 0;
}
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
long long n,s,cop;
if(!bins(1,4000000015))
cout<<-1;
else
{
n=bins(1,4000000015);
s=p;
while(s==p)
{
s=0;
n--;
cop=n;
while(cop!=0)
{
s=s+cop/5;
cop=cop/5;
}
}
g<<n+1;
}
}