Cod sursa(job #1126743)
Utilizator | Data | 27 februarie 2014 09:35:06 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("fact.in");
ofstream fout("fact.out");
int i=2, p, n, s=0, l;
fin>>p;
if(p==0) fout<<1;
else
{
for(l=5; l<=4*p; l*=5)
s+=(4*p)/l;
i=4*p+1;
while(s<p)
{
n=i; l=0;
while(n%5==0)
{n/=5; l++;}
s+=l;
i++;
}
if(s==p) fout<<i-1;
else fout<<-1;
}
return 0;
}