Pagini recente » Cod sursa (job #1057831) | Cod sursa (job #2575376) | Cod sursa (job #2443409) | Cod sursa (job #1722983) | Cod sursa (job #306621)
Cod sursa(job #306621)
#include<stdio.h>
#define N 20
struct ceva {unsigned long long int inf,z;} v[1001];
unsigned long long int p,i,j,k,l,m,n,sol;
int main(){
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%lld",&p);
if(p==0){printf("%d",1);return 0;}
v[1].inf=5;v[1].z=1;
for(i=2;i<=N;i++)
{v[i].inf=v[i-1].inf*5;
v[i].z=v[i-1].z*5+1;}
for(i=N;i>=1;i--)
if(v[i].z<=p)
for(j=4;j>=1;j--)
if(v[i].z*j<=p){
sol+=v[i].inf*j;p-=v[i].z*j;break;}
if(p)
printf("%d",-1);
else
printf("%lld",sol);
return 0;}