0分求调
查看原帖
0分求调
932345
OIER__Tym2011楼主2024/7/1 18:03
#include<bits/stdc++.h>
using namespace std;
struct node{
	int y,s,e;
	int name;
}st[10009];
struct node2{
	int pro;
	int name2;
}st2[10009];
bool cmp(node a,node b){
	return max(a.y,a.s)>max(b.y,b.s);
}
bool cmp2(node a,node b){
	return a.y+a.s>b.y+b.s;
}
bool cmp3(node a,node b){
	return a.y+a.s+a.e>b.y+b.s+b.e;
}
bool cmp4(node2 a,node2 b){
	return a.name2<b.name2;
}
int main(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>st[i].y>>st[i].s>>st[i].e;
		st[i].name=i;
	}
	sort(st+1,st+1+n,cmp);
	sort(st+1,st+1+n,cmp2);	
	sort(st+1,st+1+n,cmp3);
	for(int i=1;i<=n;i++){
		int sum=st[i].y+st[i].s+st[i].e;
		int sum2=st[i-1].y+st[i-1].s+st[i-1].e;
		if(sum==sum2 && sum-st[i].e==sum2-st[i-1].e && max(st[i].y,st[i].s)==max(st[i-1].y,st[i-1].s)){
			st2[i].pro=i-1;
		}
		else st2[i].pro=i;
		st2[i].name2=st[i].name;
	}	
	sort(st2+1,st2+1+n,cmp4);
	for(int i=1;i<=n;i++){
		cout<<st2[i].pro<<endl;
	}
	return 0;
}

2024/7/1 18:03
加载中...