当前位置: 首页 > news >正文

平面最近对(p1429)

P1429 平面最近点对(加强版)

题目背景

P7883 平面最近点对(加强加强版)

题目描述

给定平面上 \(n\) 个点,找出其中的一对点的距离,使得在这 \(n\) 个点的所有点对中,该距离为所有点对中最小的。

输入格式

第一行:\(n\) ,保证 \(2\le n\le 200000\)

接下来 \(n\) 行:每行两个整数:\(x\ y\) ,表示一个点的行坐标和列坐标,中间用一个空格隔开。

输出格式

仅一行,一个实数,表示最短距离,精确到小数点后面 \(4\) 位。

输入输出样例 #1

输入 #1

3
1 1
1 2
2 2

输出 #1

1.0000

说明/提示

数据保证 \(0\le x,y\le 10^9\)

AC代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn=1e6;struct Node{int x,y;
} s[maxn];bool cmp(const Node &a,const Node &b){if(a.x==b.x) return a.y<b.y;return a.x<b.x;
}bool cmp1(const int &a,const int &b){return s[a].y<s[b].y;
}ll dis(int a,int b){return (ll)(s[a].x-s[b].x)*(s[a].x-s[b].x)+(ll)(s[a].y-s[b].y)*(s[a].y-s[b].y);
}int tmp[maxn];ll memrge(int l,int r){if(l>=r) return LLONG_MAX;if(l+1==r) return dis(l,r);int mid=(l+r)>>1;ll d1=memrge(l,mid);ll d2=memrge(mid+1,r);ll d=min(d1,d2);int t=0;for (int i = l; i <= r; i++){if ((s[i].x - s[mid].x) * (s[i].x - s[mid].x) < d){tmp[t++]=i;}}sort(tmp,tmp+t,cmp1);for(int i=0;i<t;i++){for (int j = i + 1; j < t && (s[tmp[j]].y - s[tmp[i]].y) * (s[tmp[j]].y - s[tmp[i]].y) < d; j++){d=min(d,dis(tmp[i],tmp[j]));}}return d;
}int main(){int n;cin>>n;for(int i=1;i<=n;i++){cin>>s[i].x>>s[i].y;}double ans;sort(s+1,s+n+1,cmp);ans=memrge(1,n);ans=sqrt(ans);printf("%.4lf\n",ans);return 0;
}
http://www.rkmt.cn/news/46146.html

相关文章:

  • 用Jmeter向测试接口发送快递查询请求
  • 五城渠道招商会圆满收官,纷享销客全国生态布局再提速!
  • 在JMeter中查询天气和快递
  • 快递查询,-jmeter
  • 2025年防爆正压柜厂家权威推荐榜单:防爆正压箱/粉尘防爆柜/防爆正压型小屋源头厂家精选
  • 2025年靠谱的加热器厂家最新权威推荐排行榜
  • java-基础-内存查看
  • 2025年评价高的打浆机折叠款行业内口碑厂家排行榜
  • Redis终极面试题:从基础到原理,从概念到实战的10道“必杀题”
  • 2025年11月数控加工中心推荐:知名厂家榜与口碑评价对比指南
  • 2025年口碑好的海绵吸盘热门厂家推荐榜单
  • Python3 sys 模块
  • 2025年11月摩擦焊机推荐:主流厂家排行榜与口碑评价对比指南
  • 2025年质量好的小麦粉加工成套设备厂家最新TOP实力排行
  • 2025年评价高的三段力一字铰链品牌厂家排行榜
  • 2025年靠谱的家具一字铰链厂家最新推荐权威榜
  • 实用指南:【超全】基于Springboot的在线交流论坛系统【包括源码+文档+调试】
  • sssss
  • 2025年直流电机源头厂家口碑排行榜单
  • 2025年热门的复合陶瓷衬板热门厂家推荐榜单
  • 2025年质量好的煤仓铸石板用户口碑最好的厂家榜
  • 天气查询
  • 2025年口碑好的AB枕芯厂家推荐及选择指南
  • 使用 xmake 固定 MinGW 工具链路径的配置方法
  • 2025年比较好的选粉机厂家推荐及选择参考
  • 2025年平板类变压器实力厂家排行榜
  • 2025年质量好的再生法兰绒行业内口碑厂家排行榜
  • biji-mysql
  • 在AI技术快速实现创意的时代,挖掘数学学习新需求成为关键挑战
  • 英皇热水器售后服务电话4009968065