Cod sursa(job #866502)
| Utilizator | Data | 28 ianuarie 2013 11:11:49 | |
|---|---|---|---|
| Problema | Factorial | Scor | 65 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include<fstream>
#include<math.h>
using namespace std;
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
int p;
f>>p;
int i=5;
if(p==0)
{
g<<1<<endl;
}
else
{
int zerouri = 1;
while(p > (zerouri * 5 + 1)) {
zerouri = zerouri * 5 + 1;
i *= 5;
}
i += 5;
while(p > zerouri)
{
int ci=i;
while(ci%5==0)
{
zerouri++;
ci/=5;
}
i+=5;
}
if(p != zerouri)
{
g<<-1<<endl;
}
else
g<<(i-5)<<endl;
}
f.close();
g.close();
return 0;
}
