No.760 Where am I moved to?

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / スペシャルジャッジ問題 (複数の解が存在する可能性があります)
タグ : / 解いたユーザー数 16
作問者 : cielciel / テスター : はむこはむこ
0 ProblemId : 2523 / 出題時の順位表

問題文

以前、あなたは海に浮かぶ船に乗っていました。
船は、世界に固定されたXY座標系(世界座標系)から見て点$(x_a,y_a)$にいて、向き$\theta_a$を向いていたことがわかっています(向きは数学の極座標での向きと同様)。
船にも、船に固定されたXY座標系(船座標系)が設置されており、船座標系は船の向きをX軸としたXY座標系です。
船座標系は、船が動くと一緒に動きます。

海には、決して動かない$2$本の杭が刺さっています。
杭$1$は世界座標系で$(x_{11},y_{11})$にあり、杭$2$は世界座標系で$(x_{12},y_{12})$にあることがわかっています。

船には、杭の位置を船座標系で計測する機器が取り付けられています。
この機器を使うことで、船座標系から見た杭$1$の座標と杭$2$の座標を得ることができます。

以前から、少し時間が経って船が流されたので、自分の位置がわからなくなってしまいました。
そこであなたは、まだ船が以前の位置と向きにいると仮定して、「杭の見かけ上の世界座標」を以下の情報から計算しました。
・以前いた船の位置
・船に取り付けられた機器から得た、杭$1$と杭$2$の座標
杭$1$、杭$2$の「杭の見かけ上の世界座標」は、それぞれ$(x_{21},y_{21})$と$(x_{22},y_{22})$でした。

あなたは、「杭の見かけ上の世界座標」と実際の杭の座標を比較することで、今の船の位置を計算することに気づきました。
現在の船の、世界座標系から見た位置$(x_b,y_b)$および、向き$\theta_b$を計算してください。

入力

xa ya θa
x11 y11
x12 y12
x21 y21
x22 y22

$x_a, y_a \theta_a$: 以前の自分の(船の)世界座標および向き(小数)
$x_{11} \cdots y_{12}$: $2$つの杭の世界座標(小数)
$x_{21} \cdots y_{22}$: 現在の$2$つの杭の(見かけ上の)世界座標(小数)
杭$1$と杭$2$は区別できる。
杭$1$と杭$2$の位置は異なる。

$0^{\circ} \le \theta_a \le 360^{\circ}$
$-10000 \le x_a, y_a, x_{11} \cdots y_{22} \le 10000$

$(x_{11}, y_{11})$と$(x_{12}, y_{12})$とのユークリッド距離、および$(x_{21}, y_{21})$と$(x_{22}, y_{22})$とのユークリッド距離は、(少なくとも1e-9の精度で)等しい

出力

xb yb θb

$x_b, y_b, \theta_b$: 現在の自分の(船の)世界座標および向き(小数)

「現在の自分の座標及び向き」に自分が移動したとする場合の$(x_{11}, y_{11}), (x_{12}, y_{12})$の新しい見かけ上の座標と、$(x_{21}, y_{21}), (x_{22}, y_{22})$の座標が、それぞれユークリッド距離が1e-5未満の場合に正解とします。$\theta_b$を0°以上360°以下に収める必要はありません。

サンプル

サンプル1
入力
0 0 90
0 1
-1 1
1 0
1 1
出力
0 0 180

杭$1$が(0,1)から(1,0)、杭$2$が(-1,1)が(1,1)に移動したように見えるためには、船座標を上を+x、左を+yにするように座標軸を設定すればよいです。そのような座標系を作るには自分をさらに90°回転させればよいです。
0.0 0.0 180.0でも正解です。

サンプル2
入力
1 2 0
3 3
4 4
2 2
3 3
出力
2 3 0

杭$1$が$(3,3)$が$(2,2)$に、杭$2$が$(4,4)$が$(3,3)$に移動したようにするには、船座標を原点が世界座標の$(1,1)$を通るように座標軸を書けばよいです。そのような座標系を作るには自分をx+1,y+1すればよいです。

サンプル3
入力
1 1 90
2 1
2 0
0 -3
-1 -3
出力
-2 2 180

回転と平行移動を組み合わせるとこのようになります。

提出ページヘ
下のフォームでの入力は、テキストボックスにフォーカスがない場合は、(Onにしている場合)ショートカットキー・スマートサブミットの影響を受けるので、必要なら提出ページに遷移してください。

言語
問題によって提出できない言語があります。参考
ソースコード
ソースコードのテキストボックスに文字がある場合はファイルは無視されます。
テキストボックスで提出するとCR(\r)が除去されますが、ファイルで提出すると除去されません。