Cod sursa(job #424801)
Utilizator | Onutu Catalin beyond_k7a | Data | 25 martie 2010 10:49:11 |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include<iostream>
#include<fstream>
using namespace std;
int get(int x, int j)
{
int nr=0;
while(x%j==0)
{
nr++;
x/=j;
}
return nr;
}
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
int ci=0,d=0,nr,p,i;
f>>p;
nr=0;
if(p>1000)
{
i=5;
if(p>50000)
i=200010;
for(;;i+=5)
{
ci+=get(i,5);
if(ci==p)
{
g<<i;
break;
}
}
}
else
for(i=1;;i++)
{
ci+=get(i,5);
if(ci==p)
{
g<<i;
break;
}
}
f.close();
g.close();
return 0;
}