Pagini recente » Borderou de evaluare (job #1552371) | Cod sursa (job #299821) | Borderou de evaluare (job #1852785) | Cod sursa (job #846903) | Cod sursa (job #3231750)
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
const int NMAX = 1e8;
int nr_0(int m)
{
int nrz = 0;
for(int i = 5; i <= m; i+=5)
if(i % 5 == 0)
{
int ci = i;
while(ci % 5 == 0)
nrz++, ci /= 5;
}
return nrz;
}
int Factorial(int P)
{
int st = 1, dr = P+1, rez;
while(st <= dr)
{
int m = (st+dr)/2;
if(nr_0(m) >= P)
rez = m, dr = m-1;
else
st = m+1;
}
return rez;
}
int main()
{
int P;
fin >> P;
fout << Factorial(P) << "\n";
}