1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

核心做法(分治 + 归并按 y 排序):

  1. 先按 x 坐标排序所有点。
  2. 递归把点集分成左右两半,分别求出左右内部的最小距离平方 d。
  3. 在合并阶段,把当前区间按 y 坐标归并排序(保证递归返回后区间内点按 y 有序)。
  4. 只需检查“中线附近”宽度为 sqrt(d) 的条带(strip):满足 (x-midx)^2 < d 的点。
  5. 条带内点按 y 有序后,对每个点只需向后检查 y 差平方小于 d 的少量点(理论保证常数个),更新最小值。

P4541.第2题-城市信号塔的最小距离

    1000ms Tried: 449 Accepted: 66 Difficulty: 7 所属公司 : 华为
    算法与标签>分治算法

题目内容

某城市计划在多个地点建立信号塔,所有信号塔的覆盖范围均为圆形,现给定所有信号塔的坐标(二维平面上的点),要求检测信号塔间的距离 (x1−x2)2+(y1−y2)2(x_1-x_2 )^2+(y_1- y_2)^2(x1​−x2​)2+(y1​−y2​)2,请返回所有信号塔间的最小距离。

输入描述

第一行为整数 n(2≤n≤100000)n(2≤n≤100000)n(2≤n≤100000),表示表示信号塔数量。

接下来 nnn 行,每行包含两个整数 x(−100000≤x≤100000)x(-100000≤x≤100000)x(−100000≤x≤100000) 和 y(−100000≤y≤100000)y(-100000≤y≤100000)y(−100000≤y≤100000),以空格分隔,表示信号塔的坐标。

输出描述

一个整数,表示所有信号塔间的最小距离。

样例1

输入

5
0 0
0 5
3 4
3 5
3 6

输出

1

说明

最近的点对是 (3,4)(3,4)(3,4) 和 (3,5)(3,5)(3,5),距离为 (3−3)2+(5−4)2=1(3-3)^2+(5-4)^2=1(3−3)2+(5−4)2=1 。

样例2

输入

4
0 0
0 1
1 0
1 1

输出

1

说明

最近的点对是 (0,0)、(0,1)(0,0)、(0,1)(0,0)、(0,1) 和 (0,0)、(1,0)(0,0)、(1,0)(0,0)、(1,0),距离为 (0−0)2+(1−0)2=1(0-0)^2+ (1-0)^2=1(0−0)2+(1−0)2=1

样例3

输入

2
0 0
1 1

输出

2

说明

最近的两个点是 (0,0)(0,0)(0,0) 和 (1,1)(1,1)(1,1),距离为 (1−0)2+(1−0)2=2(1-0)^2+(1-0)^2=2(1−0)2+(1−0)2=2 。

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 1, 44ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?