QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 2048 MB 満点: 100

#8266. 天文学家

統計

这位天文学家热衷于观星。具体来说,他从通过望远镜同时观测 $k$ 颗星星中获得了极大的乐趣。建造一个半径为 $r$ 的望远镜需要花费 $t \cdot r$ 克朗。新造的望远镜初始指向原点 $(0, 0)$。将望远镜移动到其他位置也需要付出努力;将望远镜移动 $d$ 个单位距离需要花费 $s \cdot d$ 克朗。天文学家可以观测到望远镜指向位置周围距离在 $r$ 以内的所有星星。

请问,建造并移动一个能够同时观测到 $k$ 颗星星的望远镜需要花费多少钱?

所有坐标和距离均在欧几里得平面上给出。

这是一个 $n = 3$ 颗星星位于 $(0, 0)$、$(2, 0)$ 和 $(3, 1)$ 的例子。阴影区域显示了一个半径为 $1$、指向 $(1, 0)$ 并覆盖了两颗星星的望远镜;这花费了 $s + t$ 克朗,是样例输入 3 的最优解。图中还显示了样例输入 1、2 和 4 的最优解。

输入格式

第一行包含四个整数:天文学家想要观测的星星数量 $k$、夜空中星星的总数 $n$、移动成本 $s$ 以及望远镜建造成本 $t$。接下来 $n$ 行,其中第 $i$ 行包含第 $i$ 颗星星的整数坐标 $x_i$ 和 $y_i$。

输出格式

一个实数:天文学家需要花费的最小克朗数。

数据范围

你可以假设:

  1. $1 \le k \le n \le 700$。
  2. $x_i, y_i \in \{-10^9, \dots, 10^9\}$,对于所有 $i \in \{1, \dots, n\}$。
  3. $s, t \in \{0, \dots, 10^9\}$。
  4. 如果你的输出与正确答案的相对误差或绝对误差在 $\epsilon = 10^{-6}$ 以内,则被视为正确。

你的解法将在多组测试数据上进行测试,每组测试数据都有相应的分值。每组测试数据包含多组测试用例。要获得某组测试数据的分数,你需要解决该组中的所有测试用例。你的最终得分为单次提交的最高得分。

组别 分值 约束条件
1 8 $t \le s$
2 9 $n \le 50$ 且 $s = 0$
3 18 $s = 0$
4 13 $n \le 50$
5 14 $n \le 350$
6 15 $\epsilon = 1/10$
7 23 无额外约束

样例

样例输入 1

2 3 1000 500
0 0
2 0
3 1

样例输出 1

1000.0

样例输入 2

2 3 500 3000
0 0
2 0
3 1

样例输出 2

3387.277541898787

样例输入 3

2 3 250 750
0 0
2 0
3 1

样例输出 3

1000.0

样例输入 4

2 3 0 500
0 0
2 0
3 1

样例输出 4

353.5533905932738

样例输入 5

3 4 0 10
0 0
10 0
5 10
5 5

样例输出 5

50.0

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#648Editorial Open题解Milmon2026-01-06 12:51:46 Download

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.