Pagini recente » Cod sursa (job #81387) | Cod sursa (job #15871) | Cod sursa (job #2470825) | Cod sursa (job #2585787) | Cod sursa (job #1109175)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int main()
{
int v[20],r[20],i,m,n,p,ok,pp;
ok=0;
if(p==0)
{
ok=1;
g<<"1";
}
f>>p;
n=0;
v[2]=1;v[3]=6;v[4]=31;v[5]=156;v[6]=781;v[7]=3906;v[8]=19531;v[9]=97656;v[10]=488281;v[11]=2441406;v[12]=12207031;v[13]=61035156;v[14]=1000000001;
r[2]=5;r[3]=25;r[4]=125;r[5]=625;r[6]=3125;r[7]=15625;r[8]=78125;r[9]=390625;r[10]=1953125;r[11]=9765625;r[12]=48828125;r[13]=244140625;r[14]=1220703125;
pp=0;
while(n/5>0)
{
pp=pp+n/5;
n=n/5;
}
if(pp!=n)
{
ok=2;
g<<"-1";
}
while(p!=0)
{
if(ok!=0)
break;
m=0;
for(i=2;i<=14;i++)
{
if(v[i]<=p)
{
m=i;
}
}
p=p-v[m];
n=n+r[m];
}
if(p==0)
{
ok=3;
g<<"1";
}
if(ok==0)
g<<n;
return 0;
}