社区讨论

80分求大牢指点

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

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@lyczg731
此快照首次捕获于
2024/07/08 20:53
2 年前
此快照最后确认于
2024/07/08 23:17
2 年前
查看原帖

求大蛇指教,必壶关![手动下跪]

结构体做的

我觉得可能cmp有问题,但就是不知道哪儿有问题[捂脸]

CPP
#include<bits/stdc++.h>
using namespace std;
struct st{
	int num;
	int ch,ma,en;
	int score;
}a[305];
bool cmp(st x,st y){
	if(x.score>y.score){
		return 1;
	}
	else if(x.score==y.score){
		if(x.ch>y.ch){
			return 1;
		}
		else if(x.ch=y.ch){
			if(x.num<y.num){
				return 1;
			}
		}
	}
	return 0;
}
int main(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].ch>>a[i].ma>>a[i].en;
		a[i].score=a[i].ch+a[i].ma+a[i].en;
		a[i].num=i;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=5;i++){
		cout<<a[i].num<<" "<<a[i].score<<endl;
	}
	return 0;
}

回复

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

正在加载回复...