Pagini recente » Cod sursa (job #1363343) | Cod sursa (job #2140285) | Cod sursa (job #1818956) | Cod sursa (job #1861146) | Cod sursa (job #2736175)
#include <fstream>
#include <algorithm>
using namespace std;
long long n,k,p,c,j,a,x,i,d,exp;
int rez[100002],prim[102];
long long f[102];
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 () {
for (i=2;i<=100;i++) {
for (j=i+i;j<=100;j+=i) {
if (prim[i]==0) {
prim[j]=1;
}
}
}
cin>>n>>k;
for (i=1;i<=n;i++) {
cin>>a;
for (j=2;j<=a;j++) {
p=j;
if (prim[j]==0) {
while (p<=a) {
f[j]+=a/p;
p*=j;
}
}
}
}
rez[1]=rez[0]=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];
}
}