Cod sursa(job #540021)
| Utilizator | Data | 23 februarie 2011 17:21:32 | |
|---|---|---|---|
| Problema | Factorial | Scor | 15 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.67 kb |
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long p;
long long nrz;
long long nr_zero(long long x)
{
long long nr = 0;
long long ulterm = 5;
while(ulterm<=x)
{
nr += x/ulterm;
ulterm*=5;
}
return nr;
}
void gen()
{
if(p==0)
{
nrz=1;
return;
}
for(int i=0;;i+=5)
{
nrz = nr_zero(i);
if(nrz > p)
{
nrz = -1;
}
if(nrz == p)
{
nrz=i;
return;
}
}
}
int main()
{
fin>>p;
gen();
fout<<nrz;
return 0;
}
