Cod sursa(job #1022459)
Utilizator | Data | 5 noiembrie 2013 14:49:55 | |
---|---|---|---|
Problema | Factorial | Scor | 35 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int main()
{
int p,i,n,k=1;
fin>>p;
if(p>100)
{
i=p;
while(i>9)
{
k*=10;
i/=10;
}
p-=k;
k=k*4+10;
}
else
k=5;
for(n=k;p>0;n+=5)
{
i=n;
while(i%5==0)
{
p--;
i/=5;
}
}
if(n<=5)
fout<<1;
else
if(p==0)
fout<<n-5;
else
fout<<-1;
}