90分求助
查看原帖
90分求助
1047296
zhangyan8216楼主2023/11/25 21:50
#include <bits/stdc++.h>
using namespace std;
int n, ans;

struct grade {
	int number, chinese, match, english;
} a[310];

bool cmp(grade a, grade b) {
	int tmp1 = a.chinese + a.english + a.match;
	int tmp2 = b.chinese + b.english + b.match;
	if (tmp1 == tmp2)
		if (a.chinese != b.chinese)
			return a.chinese > b.chinese;
		else
			return a.number > b.number;
	return tmp1 > tmp2;

}

int main() {
	cin >> n;
	for (int i = 0; i < n; i++) {
		a[i].number = i + 1;
		cin >> a[i].chinese >> a[i].match >> a[i].english;
	}
	sort(a, a + n, cmp);
	for (int i = 0; i < 5; i++) {
		cout << a[i].number << ' ' << a[i].chinese + a[i].english + a[i].match << endl;
	}


	return 0;
}

2023/11/25 21:50
加载中...