atcoder#TENKA12017E. CARtesian Coodinate

CARtesian Coodinate

配点 : 800800

問題文

xyxy 平面上に直線が NN 本あります。ii 本目の直線は、Aix+Biy=CiA_ix+B_iy=C_i で表される直線です。 これら NN 直線と、xx 軸、yy 軸を合わせた合計 N+2N+2 本の直線のうちどの相異なる 22 本をとっても、ちょうど 11 点で交わります。

全ての 1i<jN1 \leq i < j \leq N に対し、ii 本目の直線と jj 本目の直線の交点に車を配置します。 33 直線以上が一点で交わる場合も、各直線の組に対して独立に車を配置します。すなわち、kk 本の直線の交点には、 k(k1)/2k(k-1)/2 台の車が配置されていることになります。

車は全てとても古くなっているため、各車は、xx 軸または yy 軸に平行な方向にのみ動くことができます。

骨董品の車の展覧会を開催したい高橋君は、xyxy 平面上に会場を 11 つ設けることになりました。 車マニアの高橋君は、今にも壊れそうな車たちをなるべく壊さないように、 全ての車を会場に移動するときの移動距離の合計が最も小さくなるような地点に会場を設けることにしました。 もしそのような地点が一意に定まらないなら、上の条件を満たす地点のうち xx 座標の最も小さい地点に、 それでも一意に定まらないなら、上の 22 条件に加えて yy 座標も最も小さい地点に高橋君は会場を設けます。

高橋君が会場を設ける地点の座標を求めてください。

制約

  • 2N4×1042 \leq N \leq 4 \times 10^4
  • 1Ai,Bi104(1iN)1 \leq |A_i|,|B_i| \leq 10^4(1 \leq i \leq N)
  • 0Ci104(1iN)0 \leq |C_i| \leq 10^4(1 \leq i \leq N)
  • 与えられるどの 22 直線も平行でない
  • 入力は全て整数である

入力

入力は以下の形式で標準入力から与えられる。

NN

A1A_1 B1B_1 C1C_1

:

ANA_N BNB_N CNC_N

出力

高橋君が会場を設ける地点の xx 座標と yy 座標を、順に空白区切りで出力せよ。絶対誤差あるいは相対誤差が 10910^{-9} 以下の場合に正答と判断される。

3
1 1 1
2 -1 2
-1 2 2
1.000000000000000 1.000000000000000

図の青丸の地点に一台ずつ車が存在します。求める座標は、図の紫丸の地点になります。

4
1 1 2
1 -1 0
3 -1 -2
1 -3 4
-1.000000000000000 -1.000000000000000
7
1 7 8
-2 4 9
3 -8 -5
9 2 -14
6 7 5
-8 -9 3
3 8 10
-1.722222222222222 1.325000000000000