Pagini recente » Cod sursa (job #3178086) | Cod sursa (job #539876) | Cod sursa (job #158282) | Cod sursa (job #1081419) | Cod sursa (job #1438117)
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
/*
(p-5)%6==0 => -1
N=5^x=> p-i=-1 ptr i=1:x-1;
in rest -> +5 in poz != -1
*/
FILE *f=fopen("fact.in","rt");
FILE *g=fopen("fact.out","wt");
long *v;
int nu[11]={5,25,125,625,3125,15625,78125 ,390625 ,1953125,9765625,48828125};
long long i,p,j,k,m,suma=0;
int nr;
fscanf(f,"%lld",&p);
v=calloc(11,sizeof(*v));
for(i=0;i<11;i++)
{
v[i]=(nu[i]-1)/4;
if(p>v[i])
m=i;
printf("%d ",m);
}
for(i=m;i>=0;i--)
{
nr=0;
while(p>=v[i])
{
p-=v[i];
nr++;
suma+=nu[i];
}
if(nr==5)
{
printf("-1");
return 0;
}
}
printf("%d ",suma);
return 0;
}