这题纯模拟就可以了呀,还有标签上怎么有个搜索?
模拟代码:
#include<bits/stdc++.h>
#define int long long
#define N 105
#define M 100005
using namespace std;
int n,k,a[N],t[N],ans[M],cnt;
signed main(){
scanf("%lld%lld",&n,&k);
for(int i=1;i<=n;i++) scanf("%lld",&a[i]);
ans[0]=1;
while(cnt<k){
int mins=1e18,kk;
for(int i=1;i<=n;i++){
if(ans[t[i]]*a[i]<mins){
mins=ans[t[i]]*a[i];
kk=i;
}
}
t[kk]++;
if(mins!=ans[cnt]) ans[++cnt]=mins;
}
printf("%lld",ans[k]);
return 0;
}
思维量和代码难度都很小