P16272 [蓝桥杯 2026 省 Java B 组] 星座导航校准器

题目描述

深空探测器在执行任务时需要依靠星座导航系统进行精确定位。该系统由若干颗导航卫星组成,每颗卫星都有固定的轨道位置和信号强度。 为了确保导航精度,需要选择一组卫星构成“导航空座”,使得: 1. 两颗卫星距离过近会产生干扰,降低导航精度; 2. 星座必须保持连通性(通信半径为 $R$,任意两颗卫星都能通过直接或间接通信到达); 3. 在综合考虑以上因素后,使总导航精度最大化。 #### 导航精度计算规则 设选定的导航空座包含卫星集合 $S = \{s_1, s_2, \dots, s_k\}$,每颗卫星 $s_i$ 位于坐标 $(x_i, y_i)$,信号强度为 $p_i$。 - **基础精度**:每颗卫星贡献的基础精度为其信号强度 $p_i$。 - **几何加成**:考虑星座的几何分布,计算所有卫星对之间的几何加成: $$ \begin{aligned} \text{GeometricBonus} = \sum_{i=1}^{k-1} \sum_{j=i+1}^{k} \frac{p_i \times p_j}{\sqrt{d_{ij}^2 + 1}} \end{aligned} $$ 其中 $d_{ij} = \sqrt{(x_i - x_j)^2 + (y_i - y_j)^2}$ 是卫星 $s_i$ 和 $s_j$ 之间的欧几里得距离。 #### 连通性约束: - 如果两颗卫星距离 $d_{ij} \leq R$,则它们可以直接通信。 - 整个星座必须保持连通(任意两颗卫星都能通过直接或间接通信到达)。 #### 干扰惩罚: 如果两颗卫星距离过近($d_{ij} < T$),会产生信号干扰,精度减少: $$ \begin{aligned} \text{InterferencePenalty} = \sum_{i=1}^{k-1} \sum_{j=i+1}^{k} \mathbf{1}_{d_{ij} < T} \cdot (T - d_{ij}) \times \min(p_i, p_j) \end{aligned} $$ 其中 $\mathbf{1}_{d_{ij} < T}$ 是指示函数,当条件满足时为 $1$,否则为 $0$;对每一对不同的卫星($i < j$)各计算一次干扰惩罚。 #### 总导航精度计算公式: $$ \begin{aligned} \text{TotalPrecision} = \sum_{i=1}^{k} p_i + \text{GeometricBonus} - \text{InterferencePenalty} \end{aligned} $$ 给定 $N$ 颗候选卫星的坐标和信号强度,以及通信半径 $R$ 和干扰阈值 $T$,从中选择若干颗卫星组成导航空座,使得: 1. 星座保持连通性(通信半径为 $R$); 2. 总导航精度最大化; 3. 星座中至少包含 $K$ 颗卫星。

输入格式

第一行包含四个整数 $N$、$K$、$R$、$T$,分别表示候选卫星数量、最少卫星数量、通信半径和干扰阈值。 接下来 $N$ 行,每行包含三个整数 $x_i$、$y_i$、$p_i$,表示第 $i$ 颗卫星的坐标和信号强度。

输出格式

输出一行,包含一个整数,表示能够达到的最大导航精度(向下取整)。

说明/提示

### 【样例说明 1】 最优解:选择卫星 $\{1, 2, 3\}$(编号从 $1$ 开始),即坐标为 $(0, 0)$、$(5, 0)$、$(0, 5)$ 的三颗卫星。 #### 连通性验证: - $d_{12} = \sqrt{(0 - 5)^2 + (0 - 0)^2} = 5 \leq R = 10$ ✓ - $d_{13} = \sqrt{(0 - 0)^2 + (0 - 5)^2} = 5 \leq R = 10$ ✓ - $d_{23} = \sqrt{(5 - 0)^2 + (0 - 5)^2} = \sqrt{50} \approx 7.07 \leq R = 10$ ✓ 所有卫星对都能直接通信,星座连通。 #### 精度计算: 1. **基础精度**:$5 + 8 + 6 = 19$。 2. **几何加成**: - 卫星 1-2:$\frac{5 \times 8}{\sqrt{5^2 + 1}} = \frac{40}{\sqrt{26}} \approx 7.84$; - 卫星 1-3:$\frac{5 \times 6}{\sqrt{5^2 + 1}} = \frac{30}{\sqrt{26}} \approx 5.88$; - 卫星 2-3:$\frac{8 \times 6}{\sqrt{50 + 1}} = \frac{48}{\sqrt{51}} \approx 6.72$。 总几何加成:$7.84 + 5.88 + 6.72 = 20.44$。 3. **干扰惩罚**:所有距离都 $\geq 5 > T = 3$,无干扰惩罚。 总精度:$19 + 20.44 - 0 = 39.44$,向下取整为 **39**。 ### 【样例说明 2】 最优解:选择卫星 $\{1, 2, 3, 5\}$(编号从 $1$ 开始),即坐标为 $(0, 0)$、$(2, 0)$、$(4, 0)$、$(1, 4)$ 的四颗卫星。 #### 连通性验证: - $d_{12} = 2 \leq R = 5$ ✓ - $d_{13} = 4 \leq R = 5$ ✓ - $d_{15} = \sqrt{1^2 + 4^2} = \sqrt{17} \approx 4.12 \leq R = 5$ ✓ - $d_{23} = 2 \leq R = 5$ ✓ - $d_{25} = \sqrt{1^2 + 4^2} = \sqrt{17} \approx 4.12 \leq R = 5$ ✓ - $d_{35} = \sqrt{3^2 + 4^2} = 5 \leq R = 5$ ✓ 所有选中卫星对都能直接通信,星座连通。 #### 精度计算: 1. **基础精度**:$10 + 8 + 6 + 9 = 33$ 2. **几何加成**: - 卫星 1-2:$\frac{10 \times 8}{\sqrt{2^2 + 1}} = \frac{80}{\sqrt{5}} \approx 35.78$; - 卫星 1-3:$\frac{10 \times 6}{\sqrt{4^2 + 1}} = \frac{60}{\sqrt{17}} \approx 14.55$; - 卫星 1-5:$\frac{10 \times 9}{\sqrt{17 + 1}} = \frac{90}{\sqrt{18}} \approx 21.21$; - 卫星 2-3:$\frac{8 \times 6}{\sqrt{2^2 + 1}} = \frac{48}{\sqrt{5}} \approx 21.47$; - 卫星 2-5:$\frac{8 \times 9}{\sqrt{17 + 1}} = \frac{72}{\sqrt{18}} \approx 16.97$; - 卫星 3-5:$\frac{6 \times 9}{\sqrt{5^2 + 1}} = \frac{54}{\sqrt{26}} \approx 10.59$。 总几何加成:$35.78 + 14.55 + 21.21 + 21.47 + 16.97 + 10.59 = 120.57$。 #### 3. 干扰惩罚: - 卫星 1-2 距离 $2 < T=3$,产生干扰:$(3 - 2) \times \min(10, 8) = 1 \times 8 = 8$; - 卫星 2-3 距离 $2 < T=3$,产生干扰:$(3 - 2) \times \min(8, 6) = 1 \times 6 = 6$; - 其他卫星对距离都 $\geq 3$,无干扰。 总干扰惩罚:$8 + 6 = 14$ 总精度:$33 + 120.57 - 14 = 139.57$,向下取整为 **139**。 ### 【评测用例规模与约定】 对于 $30\%$ 的数据:$N \leq 8$,$K \leq 3$; 对于 $60\%$ 的数据:$N \leq 12$,$K \leq 5$; 对于所有评测用例: - $N \leq 15$,$K \leq 8$,$R \leq 20$,$T \leq 10$; - 坐标范围:$0 \leq x_i, y_i \leq 100$; - 信号强度:$1 \leq p_i \leq 20$; - 保证存在至少 $K$ 颗卫星、且满足连通性约束的解。