#include<iostream>
#include<queue>
#define int long long
using namespace std;
priority_queue<int,vector<int>,greater<int> >pq;
int n,k,a[100005],hd;
main(){
ios::sync_with_stdio(0);
cin>>n>>k;
for(register int i=1;i<=n;++i)cin>>a[i],pq.push(a[i]);
for(register int i=1;i<=k;++i){
while(hd==pq.top())pq.pop();
hd=pq.top(),pq.pop();
for(register int j=1;j<=n;++j)pq.push(a[j]*hd);
}
cout<<hd;
return 0;
}