Pagini recente » Cod sursa (job #451847) | Cod sursa (job #1177269) | Cod sursa (job #2035459) | Cod sursa (job #1095091) | Cod sursa (job #2035871)
#include <iostream>
#include<fstream>
#include<climits>
using namespace std;
long nr_zero(int n)
{
long p=0,i;
for(i=5;i<=n;i=i*5)
p=p+(long)(n/i);
return p;
}
int main()
{long long P,st,dr,m,nr;
int N,ok=0;
ifstream fin("fact.in");
ofstream fout("fact.out");
fin>>P;
st=0;
dr=INT_MAX;
while(st<=dr&&ok==0)
{
m=(st+dr)/2;
nr=nr_zero(m);
if(nr==P)
{
ok=1;
N=m;
}
else
if(nr>P)
dr=m-1;
else
st=m+1;
}
if(ok==1)
fout<<N;
else
fout<<"-1";
return 0;
}