Pagini recente » Cod sursa (job #1789033) | Cod sursa (job #361213) | Cod sursa (job #1940395) | Cod sursa (job #2971848) | Cod sursa (job #1437932)
#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;
long long i,p,j;
fscanf(f,"%lld",&p);
v=calloc(100000000,sizeof(*v));
v[0]=1;
/* for(i=1;i<=11;i++)
{
p=1;
for(j=0;j<i;j++)
p*=5;
v[p]=-1;
for(j=1;j<i-1;j++)
v[p-j]=-1;
}
*/
j=5;
for(i=1;i<p+1;i++)
{
if((i-5)%6==0)
v[i]=-1;
if(v[i]!=-1)
{
v[i]+=j;
j+=5;
}
}
printf("%d\n",v[p]);
/*
j=1;
i=5;
while(i<100000000)
{
if(i%25==0)
{
v[j+1]=i;
if(v[j+1]==p)
i=100000001;
j++;
}
else
{
v[j]=i;
if(v[j]==p)
i=100000001;
}
j++;
i+=5;
}
if(v[p])
{
fprintf(g,"%lld",v[p]);
printf("%lld",v[p]);
}
else
{
fprintf(g,"-1");
printf("-1");
}
for(i=0;i<100;i++)
printf(" %d\n",v[i]);
*/
return 0;
}