Pagini recente » Cod sursa (job #1025087) | Cod sursa (job #2421138) | Cod sursa (job #1743624) | Cod sursa (job #3213628) | Cod sursa (job #137261)
Cod sursa(job #137261)
#include <stdio.h>
int n,m,a[110],b[110],r[110],rez[5000],x;
void nrm(int x )
{
int i, t = 0;
for (i = 1; i <= rez[0] || t; i++, t /= 10) rez[i] = (t+=rez[i]*x) % 10;
rez[0] = i - 1;
}
int main()
{
freopen("factoriale.in","r",stdin);
freopen("factoriale.out","w",stdout);
scanf("%d%d",&n,&m);
int i,j,l;
for (i=1; i<=n; ++i) scanf("%d",&a[i]);
for (i=1; i<=n; ++i)
{
for (l=2; l<=a[i]; ++l)
{
x=l;
for (j=2; j<=x; ++j)
{
while (x %j==0)
{
++b[j];
x/=j;
}
}
}
}
for (i=2; i<=100; ++i)
{
if (b[i]>0)
{
if (b[i]%m>0) r[i]=m-(b[i]%m);
}
}
rez[0]=1;
rez[1]=1;
for (i=2; i<=100; ++i)
{
for (j=1; j<=r[i]; ++j)
{
nrm(i);
}
}
for (i=rez[0]; i>0; --i) printf("%d",rez[i]);
printf("\n");
return 0;
}