AtCoder Beginner Contest 255 B問題 Light It Up
問題
提出解答
問題の概要
人の人が座標平面上にいる. 特に, 番目の人は座標 にいる.
また, 番目の人計 人は同じ強さの明かりを持っている.
座標 にいる人が強さ の明かりを持っているとき, 中心 , 半径 の円の内部 (境界含む) が照らされる.
以下の条件を満たすために必要な明かりの強さの最小値を求めよ.
- 全ての人が少なくとも1個の明かりによって照らされている.
制約
解法
次の性質を使うことにする.
実数 に対して, 以下が成り立つ.
- となる 以上 以下の整数 が存在する
- が全ての 以上 以下の整数 で成立する
2点 間の距離を と書くことにする. つまり, としたとき,
である.
このとき, 強さ が のとき, 人 が照らされるための必要十分条件は
であるから, 上で述べた性質を利用して,
である.
これが全ての人 について成立しなければならないので,
であり, 再び上で述べた性質を利用して,
である.
以上から, としたとき, なる全ての実数 において条件を満たすので, 求めるべき答えは である.
この を求めるために, 各 に対して, は で求められるので, を 時間で求められる.