第 022 场 AtCoder Beginner Contest
D
Big Bang
AtCoder
⌀ 1857
原题
← C→
翻译中…

Problem Statement

翻译中…

宇宙はビッグバンによって誕生して以来、膨張し続けていることが知られています。

翻译中…

天文学者である高橋君はその宇宙の膨張の速度を計測することにしました。

翻译中…

高橋君はある $2$ つの日について、同じ $N$ 個の星の位置を観測しました。星の位置は座標平面上の点として記録されます。つまり各日の観測結果は座標平面上の $N$ 個の点からなる点集合になります。

翻译中…

$2$ 回の観測の結果を見比べてみると、$1$ 回目の観測結果である点集合に対して以下の $3$ つの操作を順に実行すると $2$ 回目の観測結果である点集合に一致することがわかりました。

翻译中…
  1. 同じ向きに同じ距離だけ平行移動する。
  2. 原点を中心に同じ角度だけ回転する。
  3. 原点を中心に $P$ 倍 $(1 ≦ P)$ に相似拡大する。つまり点 $(a, b)$ を点 $(a×P, b×P)$ に移すという操作をすべての点に実行する。
翻译中…

ここで $P$ の値がわかれば膨張速度を求めることができそうです。

翻译中…

いざ $P$ を求めようとした高橋君でしたが、うっかりどの点がどの星に対応するのか記したデータをなくしてしまいました。

翻译中…

そこで高橋君は優秀なプログラマーであるあなたに助けを借りることにしました。

翻译中…

$1$ 回目と $2$ 回目の観測結果が与えられるので $P$ を求めてください。

翻译中…

Input

翻译中…

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

翻译中…

N
Ax_1 Ay_1
Ax_2 Ay_2
:
Ax_N Ay_N
Bx_1 By_1
Bx_2 By_2
:
Bx_N By_N

翻译中…
  • $1$ 行目には高橋君が観測した星の個数 $N (2 ≦ N ≦ 10^5)$ が与えられる。
  • $2$ 行目からの $N$ 行のうち $i$ 行目には $1$ 回目に観測された $i$ 番目の星の位置の $x$ 座標と $y$ 座標の値を表す $2$ つの整数 $Ax_i, Ay_i (-15,000 ≦Ax_i, Ay_i ≦ 15,000)$ が空白区切りで与えられる。
  • $N+2$ 行目からの $N$ 行のうち $i$ 行目には $2$ 回目に観測された $i$ 番目の星の位置の $x$ 座標と $y$ 座標の値を表す $2$ つの整数 $Bx_i, By_i (-10^9 ≦Bx_i, By_i ≦ 10^9)$ が空白区切りで与えられる。
  • $1$ 回目も $2$ 回目も、同じ点に複数の星が観測されることはない。
  • $1$ 回目に観測された $i$ 番目の星と $2$ 回目に観測された $i$ 番目の星が同一の星とは限らない。
翻译中…

部分点

翻译中…

この問題には部分点が設定されている。

翻译中…
  • $1 ≦ N ≦ 3,000$を満たすデータセットに正解した場合は $50$ 点が与えられる。
  • $1 ≦ N ≦ 10^5$を満たすデータセットに正解した場合はさらに $50$ 点が与えられる。合計で$100$点となる。
翻译中…

Output

翻译中…

$P$ の値を $1$ 行に出力せよ。 出力は絶対誤差あるいは相対誤差の少なくとも片方が $10^{-6}$ 以下であれば許容される。出力の末尾にも改行を入れること。

翻译中…

样例

Input #1
4
0 0
0 1
1 0
1 1
0 2
2 0
-2 0
0 -2
Output #1
2.8284271247
以下のように操作を実行すれば、 $1$ 回目の観測結果の点集合が、 $2$ 回目の観測結果の点集合に移されます。 1. $x$ 軸方向に $-0.5$、 $y$ 軸方向に $-0.5$ 平行移動させる。 2. 原点を中心にして、$45°$ 時計回りに回転させる。 3. 原点を中心に $2√2$ 倍する。 よって $P = 2√2$ となります。
Input #2
6
3 4
1 3
4 3
2 2
0 1
2 0
5 5
-1 2
-1 -3
2 1
2 6
4 -3
Output #2
2.2360679775
题目信息
题号
abc022_d
时间限制
2 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。