#include <bits/stdc++.h>
using namespace std;
struct p{
int id=INT_MAX,m=INT_MAX,st=0;
}a[200001],b[200001],c[200001];
bool sd(p x,p y){
return x.m>y.m;
}
int mx[200001];
int main(){
ios::sync_with_stdio(false);
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].m>>b[i].m>>c[i].m;
a[i].id=b[i].id=c[i].id=i;
mx[i]=INT_MAX;
}
sort(a+1,a+n+1,sd);
sort(b+1,b+n+1,sd);
sort(c+1,c+n+1,sd);
a[1].st=b[1].st=c[1].st=1;
for(int i=2;i<=n;i++){
if(a[i].m==a[i-1].m)a[i].st=a[i-1].st;
else a[i].st=i;
if(b[i].m==b[i-1].m)b[i].st=b[i-1].st;
else b[i].st=i;
if(c[i].m==c[i-1].m)c[i].st=c[i-1].st;
else c[i].st=i;
}
for(int i=1;i<=n;i++){
mx[a[i].id]=min(mx[a[i].id],a[i].st);
mx[b[i].id]=min(mx[b[i].id],b[i].st);
mx[c[i].id]=min(mx[c[i].id],c[i].st);
}
for(int i=1;i<=n;i++){
cout<<mx[i]<<"\n";
}
}
洛谷显示Nothing is compiled: OUTPUT exceeds.