P13859 [SWERC 2020] Safe Distance

题目描述

:::align{center} ![](https://cdn.luogu.com.cn/upload/image_hosting/9dkboio9.png) ::: 刚刚过去的一年非常艰难,因为一种病毒在人群中传播。 幸运的是,Alice 知道保持健康的关键之一就是与他人保持安全距离。 Alice 目前正处在一个封闭的房间里,该房间可以看作一个宽度为 $X$ ,高度为 $Y$ 的二维平面。 房间内有 $N$ 个其他人,我们知道他们的坐标,第 $i$ 个人的坐标是 $(x_i, y_i)$。 我们将 Alice 和这 $N$ 个人分别视为在一个二维平面上的点。 Alice 的初始位置是 $(0, 0)$,她想要移动到位于 $(X, Y)$ 处的出口。 她可以在房间内自由地向任何方向移动,但不能踏出房间边界。 请找出 Alice 在从 $(0,0)$ 移动到 $(X, Y)$ 的过程中能够保持的与其他人的最大距离。

输入格式

输入第一行包含两个空格分隔的整数 $X$ 和 $Y$,分别表示房间的宽度和高度。 第二行包含一个整数 $N$,表示房间中的人数。 接下来 $N$ 行,每行包含两个浮点数 $x_i$ 和 $y_i$,表示第 $i$个人的坐标。 **限制条件** - $1 \le X, Y \le 1\,000\,000 $ - $1 \le N \le 1\,000$ - $0 \le x_i \le X$ - $0 \le y_i \le Y$

输出格式

输出一个浮点数 $d$,表示 Alice 能与每个人保持的最大距离。 允许$10^{-5}$ 的相对或绝对误差:如果 $d$ 是正确答案, 那么任何在区间 $[d - 10^{-5}; d + 10^{-5}]$ 内或区间 $[(1 - 10^{-5})d ;(1 + 10^{-5})d]$ 内的数值都被认为是正确答案。

说明/提示

Alice 可以与每个人保持 2.25 的距离,这是她能做到的最好结果。 下图中展示了一条可能的路径(颜色为绿色)。 :::align{center} ![](https://espresso.codeforces.com/f255fbcd3516966354b195a2a130d94c9406d985.png) ::: Translate by SegmentSplay ,使用 Deepseek R1作为辅助翻译。