#include<bits/stdc++.h>
using namespace std;
struct Node
{
int c,m,e,r,id,all;
}p[100000];
bool cmp1(Node a,Node b)
{
if(a.all!=b.all)
{
return a.all>b.all;
}
else if((a.c+a.m)!=(b.c+b.m))
{
return (a.c+a.m)>(b.c+b.m);
}
else if(max(a.c,a.m)!=max(b.c,b.m))
{
return max(a.c,a.m)>max(b.c,b.m);
}
else
{
return a.id<b.id;
}
}
bool cmp2(Node a,Node b)
{
return a.id<b.id;
}
int main()
{
int n;
cin>>n;
for(int i=1; i<=n; i++)
{
cin>>p[i].c>>p[i].m>>p[i].e;
p[i].all=p[i].c+p[i].m+p[i].e;
p[i].id=i;
}
sort(p+1,p+1+n,cmp1);
for(int i=1; i<=n; i++)
{
p[i].r=i;
}
sort(p+1,p+1+n; cmp2);
for(int i=1; i<=n; i++)
{
cout<<p[i].r<<"\n";
}
return 0;
}
改了非常久,不知道哪里出错了