提交时间:2024-12-12 16:45:36

运行 ID: 314107

#include <bits/stdc++.h> using namespace std; int n,c[500],e[500],m[500],xh[500]; struct node { int x; int y; int z; }; node a[500]; bool xx(node a,node b){ return(a.y>b.y); } int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>c[i]>>m[i]>>e[i]; } for(int i=1;i<=n;i++){ a[i].x=i; a[i].y=c[i]+m[i]+e[i]; a[i].z=c[i]; } sort(a+1,a+n+1,xx); for(int i=1;i<=n-1;i++){ if(a[i].y==a[i+1].y){ if(a[i].z<a[i+1].z){ swap(a[i],a[i+1]); }else if(a[i].z=a[i+1].z){ if(a[i].x>a[i+1].x){ swap(a[i],a[i+1]); } } } } for(int i=1;i<=5;i++){ cout<<a[i].x<<" "<<a[i].y<<endl; } }