Pagini recente » Cod sursa (job #1803301) | Cod sursa (job #2434751) | Cod sursa (job #1361748) | Borderou de evaluare (job #2538051) | Cod sursa (job #2137019)
#include <fstream>
typedef long long ll;
using namespace std;
ifstream fin ("fact.in");
ofstream fout ("fact.out");
ll n;
ll nrZero ( ll x )
{
ll s = 0, p;
for ( p = 5; p <= x; p *= 5 )
s += x / p;
return s;
}
ll binSearch ( ll n )
{
ll t, pp = -1, mij, st = 1, dr = 100000000;
while ( st <= dr )
{
mij = (st + dr) / 2;
t = nrZero(mij);
if ( t >= n )
dr = mij - 1, pp = mij;
else
st = mij + 1;
}
return pp;
}
int main()
{
fin >> n;
if ( n == 0 )
fout << 1;
else
{
int t = binSearch (n);
if ( nrZero(t) == n )
fout << t;
else
fout << -1;
}
}