Cod sursa(job #790316)
Utilizator | Dumitru Robert drobert | Data | 20 septembrie 2012 21:05:12 |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long p,i=1,nr,v[]={0,25,125,625,1250,6250,31250,156250,781250,3906250,19531250,97956250,488281250,2441406250},sum;
int main ()
{
f>>p;
if (p==0)
g<<"1";
else if (p<5 && p>0)
g<<p*5;
else
{
nr=p*5;
while (v[i]<nr)
{
sum=v[i];
while (sum<nr)
{
sum+=v[i];
nr-=5;
}
i++;
}
g<<nr;
}
return 0;
}