Cod sursa(job #171307)

Utilizator nusmaibunkeleviprofesor cicalescu nusmaibunkelevi Data 3 aprilie 2008 23:35:22
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
//#include<conio.h>

int main()
{
//clrscr();
long long p,n,i,j,x,c,v5[14]={0},v6[14]={0L},pp;
freopen("fact.in","r",stdin);
freopen("fact.out","w",stdout);
scanf("%lld",&p);
v5[0]=1;
for(i=1;i<14;i++)v5[i]=v5[i-1]*5;
v6[0]=1;
for(i=1;i<14;i++)
	for(j=0;j<=i;j++)
		v6[i]+=v5[j];
	x=p;
	n=0;
	while(x)
			{
			j=0;
			while(x>=v6[j])j++;
			j--;
			x=x-v6[j];
			n=n+v5[j+1];
			}
	x=n;pp=0;
	while(x){
			c=x/5;
			pp=pp+c;
			x=c;
			}
  //	printf("%8ld%8ld\n",n,pp);
	if(pp!=p) n=-1;
	if(p==0) n=1;
	printf("%lld\n",n);

return 0;
}