Pagini recente » Cod sursa (job #1830504) | Cod sursa (job #1076079) | Cod sursa (job #304434) | Cod sursa (job #226802) | Cod sursa (job #2776286)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nr_de_zerouri(int n);
int main()
{
int p;
fin >> p;
if(p == 0)
{
fout << 1;
}
else
{
int l = 1, r =100000000, m, k, n = -1;
while(l <= r)
{
m = (l + r) / 2;
k = nr_de_zerouri(m);
if(k == p)
{
n = m;
break;
}
else if(k > p)
{
r = m - 1;
}
else
{
l = m + 1;
}
}
if(n == -1)
{
fout << -1;
}
else
{
fout << n - n % 5;
}
}
fin.close();
fout.close();
return 0;
}
int nr_de_zerouri(int n)
{
int nr = 0;
for(int i = 5; n / i >= 1; i *= 5)
{
nr += n / i;
}
return nr;
}