80分!!cmp有问题但不知道错在哪里
查看原帖
80分!!cmp有问题但不知道错在哪里
1396668
yuanzhangyi楼主2024/7/23 22:52
#include<bits/stdc++.h>
using namespace std;
struct student{
	int yw,sx,yy,sum;
	int id;
};
bool cmp(student a,student b){
	if(a.sum==b.sum) {
	    if (a.yw==b.yw){
		    if(a.id<b.id){
		    	return a.id;}
		    else return b.id;	
			}
			if(a.yw>b.yw){
				return a.yw;
			}
			else return b.yw ;
		}
	else return a.sum>b.sum;
}
int main(){
    int n;
    cin>>n;
    student s[n];
    for(int i=0;i<n;i++){
    	s[i].id=i+1;
        cin>>s[i].yw>>s[i].sx>>s[i].yy;
        s[i].sum=s[i].yw+s[i].sx+s[i].yy;
	}
	sort(s,s+n,cmp);
	for(int m=0;m<5;m++){
		cout<<s[m].id<<' '<<s[m].sum <<endl;
	}
    return 0;
}                                                                                        
2024/7/23 22:52
加载中...