Pagini recente » Cod sursa (job #196306) | Cod sursa (job #664144) | Statistici Cata lin (XtremeXcata) | Cod sursa (job #1897036) | Cod sursa (job #2776386)
#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 = 5 * p, 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;
}
}
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;
}