CF744D Hongcow Draws a Circle
题目描述
Hongcow 非常喜欢红色,不喜欢蓝色。
Hongcow 现在站在一个无限大的平原上,平原上有 $n$ 个红色点和 $m$ 个蓝色点。
Hongcow 想要在这个平原上画一个圆,使得这个圆内至少包含一个红点,并且圆内不能有蓝点。恰好在圆边界上的点可以被视为在圆内或圆外。
请计算满足条件的最大圆的半径。如果这个圆的半径可以任意大,则输出 $-1$。否则,你的答案只要绝对误差或相对误差不超过 $10^{-4}$ 即可。
输入格式
输入的第一行包含两个整数 $n,m$($1 \leq n, m \leq 1,000$)。
接下来的 $n$ 行,每行包含两个整数 $x_{i},y_{i}$($1 \leq x_{i},y_{i} \leq 10^4$),表示第 $i$ 个红点的坐标。
之后的 $m$ 行,每行包含两个整数 $x_{i},y_{i}$($1 \leq x_{i},y_{i} \leq 10^4$),表示第 $i$ 个蓝点的坐标。
没有两个点的坐标是相同的。
输出格式
如果这个圆的半径可以任意大,请输出 $-1$。否则,请输出一个浮点数,表示满足条件的最大圆的半径。只要你的答案的绝对误差或相对误差不超过 $10^{-4}$ 即可。
也就是说,假如你的答案是 $a$,而标准答案是 $b$,则你的答案会被判为正确当且仅当 $|a - b| \leq 10^{-4} \max(1,|b|)$。
说明/提示
以下是第一个样例的图示:

以下是第二个样例的图示:

由 ChatGPT 5 翻译