def General_Binary_Increase_Search_Integer(L, R, cond, default=None): """ 条件式が単調増加であるとき, 整数上で二部探索を行う. L: 解の下限 R: 解の上限 cond: 条件(1変数関数, 広義単調増加を満たす) default: Lで条件を満たさないときの返り値 """ if not(cond(R)): return default if cond(L): return L R+=1 while R-L>1: C=L+(R-L)//2 if cond(C): R=C else: L=C return R #================================================== def solve(): N=int(input()) X=[0]*N; Y=[0]*N; T=[0]*N for i in range(N): X[i],Y[i],T[i]=map(int,input().split()) level=[[0]*N for _ in range(N)] for i in range(N): level_i=level[i] for j in range(N): if T[i]==T[j]: dx=X[i]-X[j] dy=Y[i]-Y[j] level_i[j]=dx*dx+dy*dy else: ri=X[i]*X[i]+Y[i]*Y[i] rj=X[j]*X[j]+Y[j]*Y[j] if ri