#include <bits/stdc++.h>
using namespace std;
int p[105];
queue<int> q[105];
int main() {
int k,n; cin >> k >> n;
for(int i = 1;i <= k;i++) cin >> p[i];
for(int i = 1;i <= k;i++) {
q[i].push(p[i]);
cout << p[i] << ' ';
}
cout << endl;
if(n == 1) {
cout << 2 << endl;
return 0;
}
int u = 0;
for(int i = 2;i <= n;i++) {
int minn = 0x7f7f7f7f,mini = 0;
for(int j = 1;j <= k;j++) {
if(minn > q[j].front()) {
minn = q[j].front();
mini = j;
}
}
u = q[mini].front();
cout << q[mini].front() << ' ' << mini << endl;
for(int j = mini;j <= k;j++) {
q[mini].push(u * q[j].front());
}
q[mini].pop();
}
cout << u << endl;
return 0;
}
rt,加了一些调试,样例结果是36,不对啊,望大佬指正!
(悬赏关注!)