Pagini recente » Cod sursa (job #612865) | Cod sursa (job #1280204) | Cod sursa (job #886301) | Cod sursa (job #632089) | Cod sursa (job #2325961)
#include <fstream>
using namespace std;
ifstream fi("fact.in");
ofstream fo("fact.out");
long long solve(long long val)
{
long long put = 5;
long long amount = 0;
while(put <= val)
{
amount += (val/put);
put *= 5;
}
return amount;
}
int main()
{
long long zeros;
fi>>zeros;
fi.close();
long long n = zeros;
if(zeros == 0)
{
fo<<1;
fo.close();
}
else
{
long long st = 1;
long long dr = 500000000;
while(st < dr)
{
long long mid = (st + dr) /2;
long long solvent = solve(mid);
if(solvent < zeros)
{
st = mid + 1;
}
if(solvent > zeros)
{
dr = mid - 1;
}
else if(solvent == zeros)
{
while(solve(mid) == zeros)
mid--;
mid++;
fo<<mid;
return 0;
}
}
fo<<-1;
}
}