Pagini recente » Cod sursa (job #1494587) | Cod sursa (job #2475494) | Cod sursa (job #3242637) | Cod sursa (job #1163436) | Cod sursa (job #79032)
Cod sursa(job #79032)
#include <stdio.h>
long long n,p,i,j,s,nr;
int v[200];
long long fact()
{
s=0;
while (s<n)
{
v[1]++;
j=1;
if (v[1]==5) {
while (v[j]==5)
{v[j]=0;
j++;
v[j]++;
}
if (nr<j) nr=j;
}
s=s+j;
}
if (s!=n) return -1;
else {
p=0;j=5;
for (i=1;i<=nr;i++)
{p=p+v[i]*j;
j=j*5;
}
return p;
}
}
int main()
{FILE *fin,*fout;
for (i=1;i<=100;i++)
v[i]=0;
nr=1;
fin=fopen("fact.in","r");
fscanf(fin,"%lld",&n);
fclose(fin);
fout=fopen("fact.out","w");
if (n==0) fprintf(fout,"%d",1);
else fprintf(fout,"%lld",fact());
fclose(fout);
return 0;
}