問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!
「部外者をはじけ」では、N 人の人物の二次元座標 (x_i, y_i) が与えられます。
異なる二人を結んだ直線をすべて出力してください。
N
x_1 y_1
.
.
.
x_N y_N
・1 行目には、検出した人の数 N が入力されます。
・i+1 (1 ≦ i ≦ N) 行目には、i 番目の人物の二次元座標 (x_i, y_i) が空白区切りで与えられます。
・なお、座標の単位は [m] で、座標はそれぞれ小数点以下 2 桁までの小数で与えられます。
・入力は合計 N + 1 行からなり、末尾に改行を 1 つ含みます。
人物 i (1 ≦ i ≦ N-1) と 人物 j (i+1 ≦ j ≦ N) を結んだ直線の方程式を a_(i,j)x + b_(i,j)y + c_(i,j) = 0 としたとき、a_(i,j), b_(i,j), c_(i,j) の値をこの順に空白区切りで出力してください。
出力は i の昇順、j の昇順に行ってください。
具体的には以下の形式で出力してください。
a_(1,2) b_(1,2) c_(1,2)
a_(1,3) b_(1,3) c_(1,3)
....
a_(1,N) b_(1,N) c_(1,N)
a_(2,3) b_(2,3) c_(2,3)
....
a_(N-1,N) b_(N-1,N) c_(N-1,N)
ただし、真値との誤差が 0.001 未満である場合にのみ正答とみなされます。
出力の末尾に改行を入れ、余計な文字、空行を含んではいけません。
すべてのテストケースで以下の条件を満たします。
・ 2 ≦ N ≦ 100
・ 0 ≦ x_i < 640
・ 0 ≦ y_i < 480
・ (x_i,y_i) ≠ (x_j,y_j) (i ≠ j)
2
210.43 423.86
104.71 212.42
-211.4400000000 105.7200000000 -317.1600000000
3
331.26 330.83
264.31 3.44
118.56 118.09
-327.3900000000 66.9500000000 86302.1429000000
-212.7400000000 212.7000000000 104.7114000000
114.6500000000 145.7500000000 -30804.5215000000