Pagini recente » Cod sursa (job #3361156) | Cod sursa (job #3361154) | Cod sursa (job #3361164) | Cod sursa (job #3361153) | Cod sursa (job #3361162)
#include <fstream>
using namespace std;
ifstream fin("factoriale.in");
ofstream fout("factoriale.out");
long long i,j,n,k,a,p,exp,f[102];
int rez[100002],prim[102];
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){
c[0]++;
c[c[0]]=t%10;
t=t/10;
}
}
int main()
{
for(i=2;i<=100;i++){
if(prim[i]==0){
for(int j=i+i;j<=100;j+=i){
prim[j]=1;
}
}
}
fin>>n>>k;
for(i=1;i<=n;i++){
fin>>a;
for(j=2;j<=a;j++){
p=j;
while(p<=a){
f[j]+=a/p;
p*=j;
}
}
}
rez[0]=rez[1]=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--){
fout<<rez[i];
}
return 0;
}