博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TYVJ P1081 最近距离 Label:这不是分治!!!
阅读量:6716 次
发布时间:2019-06-25

本文共 1724 字,大约阅读时间需要 5 分钟。

描述

   在一块地上,有着n(1<=n<=2000) 头牛,输入n,再分别输入这n头牛的坐标(x,y) 
(1<=x<=100000,1<=y<=100000),如果第i头牛与第j头牛间的距离最近,那么输出i和j
  
                   
                    10 | . . . . . . . 3 . . . . .
                     9 | . 1 . . 2 . . . . . . . .
                     8 | . . . . . . . . . . . . .
                     7 | . . . . . . . . . . 4 . .
                     6 | . . . . . . 9 . . . . . .
                     5 | . 8 . . . . . . . . . . .
                     4 | . . . . . 7 . . . . . . .
                     3 | . . . . . . . . . 5 . . .
                     2 | . . . . . . . . . . . . .
                     1 | . . . . 6 . . . . . . . .
                     0 ---------------------------
                                           1 1 1 1
                       0 1 2 3 4 5 6 7 8 9 0 1 2 3

输入格式

第一行n
下面n行,x,y

输出格式

最近的两个点

测试样例1

输入

2 9 
5 9 
8 10 
11 7 
10 3 
5 1 
6 4 
2 5 
7 6

输出

7 9

备注

usaco nov09 cu 第三道

代码

1 #include
2 #include
3 #include
4 #include
5 #include
6 using namespace std; 7 struct cc{ 8 double x,y; 9 }node[2005];10 long long N,no1,no2;11 double ans=double(1<<30),t;12 double dist(int i,int j){13 return fabs( (node[i].x-node[j].x)*(node[i].x-node[j].x) + 14 (node[i].y-node[j].y)*(node[i].y-node[j].y) );15 }16 17 int main(){18 scanf("%d",&N);19 for(int i=1;i<=N;i++){20 scanf("%lf %lf",&node[i].x,&node[i].y);21 node[i].x/=100.0;22 node[i].y/=100.0;23 }24 for(int i=1;i<=N;i++){25 for(int j=i+1;j<=N;j++){26 t=dist(i,j);27 if(ans>t){28 ans=t;29 no1=i;30 no2=j;31 }32 }33 }34 if(no1>no2) swap(no1,no2);35 printf("%lld %lld\n",no1,no2);36 return 0; 37 }

到后面数据可能很大

用勾股定理算出来的数可能存不下
可以在算的时候把横坐标纵坐标同时除以100.0,利用精度代替位数

看了题解发现只有2k头牛,也就是说,连优化都不用,直接搜索!!!

不用分治!!!

转载于:https://www.cnblogs.com/radiumlrb/p/5783480.html

你可能感兴趣的文章
HttpClient的基本使用
查看>>
Tomcat 7服务器线程模型
查看>>
idea设置断点,对于for循环,到指定次数时停止
查看>>
lua中面向对象(class)实现探索(一)(转)
查看>>
Model元数据定制与Model模板
查看>>
JS异常简单处理
查看>>
jvisualvm 工具使用
查看>>
《精通Python设计模式》学习行为型之责任链模式
查看>>
How to Limit NodeRunner.exe High Memory, CPU Usage
查看>>
solr7.1.0学习笔记(10)---Solr发布到Tomcat
查看>>
洛谷P1435 回文字串(dp)
查看>>
php 会话控制(关于session的维护与生命周期)
查看>>
tomcat PermGen space
查看>>
高阶函数:声明、实现(定义)与调用
查看>>
splash 安装
查看>>
mysql数据库优化课程---15、mysql优化步骤
查看>>
数据库路由中间件MyCat - 使用篇(4)
查看>>
Java程序开发中的简单内存分析
查看>>
Java中的Future相关
查看>>
CGAL Catmull-Clark Subdivide Surface
查看>>