Pagini recente » Cod sursa (job #858755) | Cod sursa (job #2401659) | Cod sursa (job #9223) | Cod sursa (job #2178975) | Cod sursa (job #2733364)
#include <fstream>
#include <algorithm>
using namespace std;
long long n,k,c,p,j,a,x,i,d,exp;
int f[10002],rez[10002];
ifstream cin("factoriale.in");
ofstream cout("factoriale.out");
void produs(int a[],int b,int c[]) {
long long t=0,aux=0;
for (long long i=1;i<=a[0];i++) {
aux=a[i]*b+t;
c[i]=aux%10;
t=aux/10;
}
c[0]=a[0];
while (t!=0) {
c[0]++;
c[c[0]]=t%10;
t/=10;
}
}
int main () {
cin>>n>>k;
for (i=1;i<=n;i++) {
cin>>a;
for (j=1;j<=a;j++) {
x=j;
d=2;
while (x>1) {
while (x%d==0) {
f[d]++;
x/=d;
}
d++;
if (x>1&&d*d>x) {
d=x;
}
}
}
}
rez[1]=rez[0]=1;
p=1;
for (i=2;i<=97;i++) {
if (f[i]>0) {
if (f[i]%k!=0) {
exp=k-f[i]%k;
}
for (j=1;j<=exp;j++) {
produs(rez,i,rez);
}
}
}
for (i=rez[0];i>=1;i--) {
cout<<rez[i];
}
}