Pagini recente » Cod sursa (job #443488) | Cod sursa (job #2568894) | Cod sursa (job #2505427) | Cod sursa (job #2729922) | Cod sursa (job #3238305)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int P;
int expp(int n)
{
int e = 0;
while (n >= 5)
{
n /= 5;
e += n;
}
return e;
}
void cautbin()
{
int p = 0, u = 5 * P, rez = -1;
while(p <= u)
{
int m = p + (u - p) / 2;
int catide0 = expp(m);
if(catide0 == P)
{
rez = m;
u = m - 1;
}
else
if(catide0 < P)
p = m + 1;
else
u = m - 1;
}
g << rez;
}
int main()
{
f >> P;
if (P == 0)
{
g << 1;
return 0;
}
cautbin();
f.close();
g.close();
return 0;
}