Pagini recente » Cod sursa (job #730178) | Cod sursa (job #3121728) | Cod sursa (job #193472) | Cod sursa (job #1428020) | Cod sursa (job #1695181)
#include <fstream>
#define inf 1000000000
using namespace std;
ifstream fin("factorial.in");
ofstream fout("factorial.out");
long long V[100], st, fi, mijl, n;
long long cnt(int x)
{
long long i, tot=0;
for (i=1; V[i-1]<=inf; i++)
{
tot += x/V[i];
if (V[i]>x)
break;
}
return tot;
}
int main()
{
int i, sol=-1;
fin>>n;
st=1; fi=inf;
V[0]=1;
for (i=1; V[i-1]<=inf; i++)
{
V[i]=V[i-1]*5;
}
while (st<=fi)
{
mijl=(st+fi)/2;
if (cnt(mijl)==n)
{
sol=mijl;
fi=mijl-1;
}
else
if (cnt(mijl)>n)
{
fi=mijl-1;
}
else
{
st=mijl+1;
}
}
fout<<sol;
return 0;
}