过样例了
#include<bits/stdc++.h>
using namespace std;
struct luogu{
int No,top,ch,ma,en,sum;
};
int n;
luogu a[10010];
int b[10010];
bool cmp(luogu a,luogu b)
{
if(a.sum>b.sum) return true;
else if(a.sum==b.sum&&a.ma+a.ch>b.ma+b.ch) return true;
else if(a.ma+a.ch==b.ma+b.ch&&max(a.ma,a.ch)>max(b.ma,b.ch)) return true;
else return false;
}
signed main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i].ch>>a[i].ma>>a[i].en;
a[i].No=i;
a[i].sum=a[i].ch+a[i].en+a[i].ma;
}
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;)
{
int next=i;
while(next<=n&&a[i].sum==a[next].sum&&a[i].ch+a[i].ma==a[next].ch+a[next].ma&&max(a[next].ma,a[next].ch)==max(a[i].ma,a[i].ch))
next++;
for(int p=i;p<next;p++)
b[a[p].No]=i;
i=next;
}
for(int i=1;i<=n;i++)
cout<<b[i]<<"\n";
return 0;
}