010 - リス地バラバラクラフト(初級編)
時間制限 0.5 秒 / メモリ制限 64 MB / 得点 121 / x 3 /
前書き
リス地バラバラクラフトとは
マイクラ実況系Youtuber「WhiteTails」(ワイテルズ)の企画であり、マインクラフトの世界に散りばめられたメンバー6人が合流を目指してマインクラフトの世界を冒険する、という趣旨の企画である。
はたして6人は合流することができるのか、プログラムを用いて判断してもらいたい。
(ei2326はこれが初作問のため問題の不備は大目に見てもらいたい+わかりづらい部分は聞いていただければ問題文の修正をします。)
問題
今回のリス地バラバラクラフトでは、メンバーの6人が座標(0,0)を中心とした縦横4001x4001の世界を舞台に挑戦する。
1行目には6人の捜索範囲dが与えられる
任意の2人のスポーン地点のユークリッド距離がd以下である場合、その2人は合流できるといえる。
また、お互いの合流できる人を介しての合流も可能である。
例えば、$人_1$と$人_2$、$人_2$と$人_3$がそれぞれ合流できるとき、$人_1$と$人_3$も合流できる。
2行目から7行目には、メンバー6人のスポーン地点$X_i、Y_i (1 \leq i \leq 6)$が与えられる。
6人全員がそれぞれ他の5人と合流できる時にのみ、進捗「生活のビーコン」を達成することができる。
進捗「生活のビーコン」が達成可能であればYes、達成できないのならばNoを1行に出力せよ。
出力の最後には改行を入れること。
入力
入力は以下の形式で標準入力から与えられる。
$d$ $X_1$ $Y_1$ $X_2$ $Y_2$ ... $X_6$ $Y_6$
1行目に整数$d$が与えられる。
2行目から7行目に$Player_i$のスポーン地点の座標$X_i$,$Y_i (1 \leq i \leq 6)$が与えられる。
出力
出力の最後に改行を入れること。
制約
全ての入出力ケースについて以下を満たす。
- $0 \leq d \leq 3000 $
- $-2000 \leq X_i, Y_i \leq 2000 (1 \leq i \leq 6)$
small入出力ケースにおいて以下を満たす。
- $0 \leq d \leq 5 $
- $-5 \leq X_i, Y_i \leq 5 (1 \leq i \leq 6)$
入出力例
入力例1
10
0 0
0 1
1 0
1 1
2 1
2 2
出力例1
Yes
このテストケースでは、6人それぞれから他の5人への距離が10以下のため、「生活のビーコン」を達成可能である。
入力例2
5
0 0
0 5
5 0
5 5
10 10
15 15
出力例2
No
X座標,Y座標の差がそれぞれ5以下でも、ユークリッド距離は5を超えるケースに注意してください。
入力例3
5
0 0
0 5
0 10
0 15
0 20
0 25
出力例2
Yes
$人_1$と$人_6$のように距離が5以下でなくても、ほかの人を介して合流できるケースに注意してください。