Pagini recente » Cod sursa (job #2056934) | Cod sursa (job #2287306) | Cod sursa (job #2954032) | Cod sursa (job #1546721) | Cod sursa (job #2415168)
#include <fstream>
using namespace std;
ifstream fin("factoriale.in");
ofstream fout("factoriale.out");
long long n,k,i,j,d,x,v[101],sol[2000000],aux,c;
void inm(long long x){
long long t=0;
for(long long i=1;i<=sol[0];i++){
sol[i]=sol[i]*x+t;
t=sol[i]/10;
sol[i]%=10;
}
while(t){
sol[++sol[0]]=t%10;
t/=10;
}
}
int main(){
fin>>n>>k;
for(;n;n--){
fin>>x;
for(j=2;j<=x;j++){
c=j;
for(d=2;d*d<=c;d++)
while(c%d==0){
c/=d;
v[d]++;
}
if(c!=1)
v[c]++;
}
}
sol[0]=1;
sol[1]=1;
for(i=2;i<=100;i++)
if(v[i]%k!=0 && v[i]!=0){
while(v[i]%k)
inm(i),v[i]++;
}
for(;sol[0];sol[0]--)
fout<<sol[sol[0]];
return 0;
}