Pagini recente » Cod sursa (job #488915) | Statistici Marginean Ioan (ionumrginean) | Cod sursa (job #1772167) | Cod sursa (job #3143363) | Cod sursa (job #1016163)
#include <fstream>
#include <stdlib.h>
#include <math.h>
using namespace std;
fstream fin("fact.in");
fstream fout("fact.out");
int nr_z(long long k)
{
int pt=1, nr=0;
while(pow(5,pt)<=k)
{
nr=nr+floor(k/pow(5,pt));
pt++;
}
return nr;
}
int main()
{
long long p, n;
fin>>p;
if(p==0)
fout<<"1";
else
{
long long a=0, b=400000017;
n=(a+b)/2;
while(nr_z(n)!=p)
{
if(p<nr_z(n))
b=n-1;
else
a=n+1;
if(a>b)
{
fout<<"-1";
return 0;
}
n=(a+b)/2;
}
if(n%10<5)
while(n%10!=0)
n--;
else
while(n%10!=5)
n--;
fout<<n;
}
return 0;
}