#include<iostream> #include<vector> using namespace std; typedef struct { int index, a, b; }Box; int main() { int t; cin >> t; for (int i = 0; i < t; i++) { int n, m; cin >> n; //n个篮子 cin >> m; //选m个篮子 vector<Box> box; for (int j = 0; j < n; j++) { Box temp; temp.index = j + 1; cin >> temp.a; cin >> temp.b; box.push_back(temp); } for (int j = 0; j < box.size() - 1; j++) { //先对梨进行冒泡排序 for (int k = j; k < box.size() - 1; k++) { if (box[k].b < box[k + 1].b) { //小数下沉 Box t = box[k]; box[k] = box[k + 1]; box[k + 1] = t; } } } for (int j = 0; j < box.size() - 1; j++) { //再对苹果进行冒泡排序 for (int k = j; k < box.size() - 1; k++) { if (box[k].a < box[k + 1].a) { //小数下沉 Box t = box[k]; box[k] = box[k + 1]; box[k + 1] = t; } } } for (int j = 0; j < m - 1; j++) cout << box[j].index << " "; cout << box[m - 1].index << endl; } return 0; } |
Double click to view unformatted code.