Pagini recente » Cod sursa (job #667675) | Cod sursa (job #2882600) | Cod sursa (job #983868) | Cod sursa (job #2012824) | Cod sursa (job #137914)
Cod sursa(job #137914)
#include<stdio.h>
long int n,k,i,x[105],sol[10000],uc,prim[105],j,xx,e,m;
int main()
{
FILE *f,*g;f=fopen("factoriale.in","r");g=fopen("factoriale.out","w");
fscanf(f,"%ld%ld",&n,&k);for(i=1;i<=n;i++)fscanf(f,"%ld",&x[i]);
sol[0]=1;uc=0;
for(i=2;i<=100;i++)
if(!prim[i])
{ e=0;
for(j=2*i;j<=100;j=j+i)prim[j]=1;
for(j=1;j<=n;j++)
{ xx=x[j];
for(;xx;xx/=i)e=e+xx/i;
}
if(e%k)
{ e%=k;e=k-e;
while(e)
{ for(m=0;m<=uc;m++)sol[m]*=i;
for(m=0;m<=uc;m++){sol[m+1]=sol[m+1]+sol[m]/10;sol[m]%=10;}
while(sol[uc+1]){uc++;sol[uc+1]=sol[uc]/10;sol[uc]%=10;}
e--;
}
}
}
for(i=uc;i>=0;i--)fprintf(g,"%ld",sol[i]);
fprintf(g,"\n");
fcloseall();return 0;
}