社区讨论

0分求调!!

P1093[NOIP 2007 普及组] 奖学金参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mm1wsyxz
此快照首次捕获于
2026/02/25 18:46
2 周前
此快照最后确认于
2026/02/27 09:00
2 周前
查看原帖
CPP
//P1093 [NOIP 2007 普及组] 奖学金
#include<bits/stdc++.h>
using namespace std;
struct student{
	int num;
	int sum;//总分 
	int chinese;
	int math;
	int english;
}a[10000];
bool cmp(student x,student y){
	if(x.sum != y.sum){
		return x.num > y.num;
	}
	if(x.chinese != y.chinese){
		return x.chinese > y.chinese;
	}
	if(x.num != y.num){
		return x.num < y.num;
	}
}
int main (){
int n;
cin >> n;
for(int i=0;i<n;i++){
	cin >> a[i].chinese >> a[i].math >> a[i].english;
	a[i].num = i;
	a[i].sum = a[i].chinese+a[i].math+a[i].english;
}
sort(a+1,a+n+1,cmp);
for(int i=0;i<5;i++){
	cout<<a[i].num << " " <<a[i].sum << endl;
}
return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...