Pagini recente » Cod sursa (job #1915805) | Cod sursa (job #1238858) | Cod sursa (job #213633) | Cod sursa (job #3285024) | Cod sursa (job #138858)
Cod sursa(job #138858)
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#define N 101
int a[N] , b[N] , c[N];
int n , i , j , k ;
long long sol = 1;
int main()
{
freopen("factoriale.in","r",stdin);
freopen("factoriale.out","w",stdout);
scanf("%d%d",&n,&k);
b[1] = b[0] = 1;
for (i = 2 ; i <= N ; ++i)
{
if (b[i]==0)
{
c[0]++;
c[c[0]] = i;
for (j = 2*i ; j <= N ; j+=i)
b[j] = 1;
}
}
for (i = 1 ; i <= n ; i++)
{
int t;
scanf("%d",&t);
for (int q = 2 ; q <= t ; q++)
{
int aux = q;
for (j = 1 ; j <= c[0] ; j++)
{
while(aux%c[j]==0)
{
a[c[j]]++;
aux/=c[j];
}
}
}
}
for (i = 1 ; i <= N ; i++)
{
if (a[i]%k!=0&&a[i]!=0)
{
long long p = a[i];
while(p%k != 0)
p++;
sol*= pow(i,p-a[i]);
}
}
printf("%lld",sol);
return 0;
}