2025年苏州大学计算机保研机试真题 - PGCode考研平台

最后更新:2025-12-08

2025年苏州大学计算机保研机试真题

本文整理苏州大学计算机保研机试真题,并提供详细解析与代码实现,帮助同学们了解保研机试的难度与题型分布

坐标点圆密度计算

坐标点圆覆盖与点密度计算

题目描述

给定一行整数序列,依次将相邻两个整数作为一对,构造二维坐标点。

例如:输入序列


12 34 53 25 61 28 78

可得到 6 个坐标点:

$$

(12,34),\,(34,53),\,(53,25),\,(25,61),\,(61,28),\,(28,78)

$$

定义以每个点为圆心的圆,半径取为该点与下一个点之间的欧氏距离。最后一个点的半径取与第一个点的距离。

$$

r_i=\sqrt{(x_{i+1}-x_i)^2+(y_{i+1}-y_i)^2}

$$

$$

r_n=\sqrt{(x_1-x_n)^2+(y_1-y_n)^2}

$$

定义 包含关系:若某点 $Q$ 满足 $\text{dist}(Q,P_i)\le r_i$,则认为该点落在圆 $C_i$ 内(边界算内)。圆心自身一定被包含。

每个圆的点数:圆内(含边界)坐标点的个数。

每个圆的点密度

$$

\text{density}_i = \frac{\text{count}_i}{\pi r_i^2},\quad \pi=3.14

$$

输出要求

请计算所有圆的点密度,并输出点密度值最大的前 5 个圆(若不足 5 个圆则全部输出)。

```

(x, y) c ddd.dd

```

其中:

输入格式

输出格式

边界说明

  1. 若输入整数少于 2 个,无法构成坐标点,输出为空。
  2. 若某圆半径为 0(相邻点相同),定义其点密度为 0;包含点数按“≤半径”计算(至少包含圆心一个)。
  3. 计算包含关系时建议使用平方比较并加微小误差避免浮点误差。
  4. 排序时比较密度用真实值,输出时才四舍五入。

样例

输入:

12 34 53 25 61 28 78

输出:

(12, 34) 4 0.10
(34, 53) 3 0.08
(53, 25) 4 0.07
(25, 61) 2 0.06
(61, 28) 3 0.05

完整题目及在线评测:https://www.pgcode.cn/