Description
经过之前的经历,loy已经成功的破译出了所有的密码。她组建了一直探墓小分队,向着她算出来的最终的目标——xx墓出发。过了几个月,他们终于到达了目的地。财富就在眼前,然而却被入门的机关给卡住了。经过一段时间的观察,loy发现了破解机关的方法,她收集到了一些数据,每个数据包含一个数和两个数字标签,将以第一个数字标签从小到大排的第十个数和从第二个数字标签从大到小排的第十个数输入到机关中,机关就能破解。
Input
输入第一行为一个整数n(10<=n<=100)。其后有n行,每一行有三个正整数:题目中的“数”和两个数字标签
Output
输出符合条件的两个数,以空格分开。
#include <iostream>
#include <algorithm>
using namespace std;
struct Data {
int num, label1, label2;
};
bool cmp1(Data a, Data b) {
return a.label1 < b.label1;
}
bool cmp2(Data a, Data b) {
return a.label2 > b.label2;
}
int main() {
int n;
cin >> n;
Data* arr = new Data[n];
for (int i = 0; i < n; i++) {
cin >> arr[i].num >> arr[i].label1 >> arr[i].label2;
}
sort(arr, arr + n, cmp1);
int num1 = arr[9].num;
sort(arr, arr + n, cmp2);
int num2 = arr[9].num;
cout << num1 << " " << num2 << endl;
delete[] arr;//new时用了[]delete时也用[]吧
return 0;
}