题目:

要建立一个信号基站服务n个村庄,这n个村庄用平面上的n个点表示。假设基站建立的位置在(X,Y),则它对某个村庄(x,y)的距离为max{|X – x|, |Y – y|}, 其中| |表示绝对值,我们的目标是让所有村庄到信号基站的距离和最小。 基站可以建立在任何实数坐标位置上,也可以与某村庄重合。

输入: 给定每个村庄的位置x[],y[],x,y都是整数,满足:            -1000000000 < x,y < 1000000000 村庄个数大于1,小于101。

输出: 所有村庄到信号基站的距离和的最小值。 关于精度: 因为输出是double。我们这样判断对错,如果标准答案是A,你的答案是a,如果|A – a| < 1e-3 我们认为是正确的,否则认为是错误的。 样例: 假设有4个村庄位置分别为 (1,4) (2,3) (0,1) (1,1) 我们的结果是5。因为我们可以选择(1.5,2.5)来建立信号基站。 bestDistance = max(|1.5-1|, |2.5-4|) + max(|1.5-2|,|2.5-3|) + max(|1.5-0|,|2.5-1|) + max(|1.5-1|,|2.5-1|) = max(0.5, 1.5) + max(0.5,0.5) + max(1.5,1.5) + max(0.5,1.5) = 1.5 + 0.5 + 1.5 + 1.5 = 5

函数头部: C/C++ double bestDistance(int n, cons int *x, const int *y); Java class Main() {     public static double bestDistance(int [] x,int [] y); }

解题:

关键在于如何处理max{|X – x|, |Y – y|},可以通过分段函数讨论来证明,max{|x1-x2|,|y1-y2|},等价于(|x1+y1-x2-y2|+|x1-y1-(x2-y2)|)/2;

这个问题转化后,就变成(|x1+y1-(x2+y2)|+|x1-y1-(x2-y2)|)/2;=》(|U-U0|+|V-V0|)/2,很明显U和V,直接求出来,就是求和求差。那下面的问题就是前面一篇博客所讲:

http://blog.csdn.net/zhang20072844/article/details/13372753

代码:

__int64 getMinDis(__int64 a[],__int64 N)
{
sort(a,a+N);
int l = 0,r = N - 1;
__int64 sum = 0;
while (l <= r)
{
sum += a[r --] - a[l ++];
}
return sum;
} double bestDistance(int n,const int *x,const int *y)
{
__int64 aAndY[110],aSubY[110];
for (int i = 0; i < n; ++ i)
{
aAndY[i] = x[i]+y[i];
aSubY[i] = x[i]-y[i];
}
return (getMinDis(aAndY,n)+getMinDis(aSubY,n))/2.0;
}

Pongo建立信号基站-实际上还是考中位数的更多相关文章

  1. QT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NETQT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NET

    QT在ui文件上建立信号操机制会不会对后期维护产生影响 - love4Mario的专栏 - 博客频道 - CSDN.NET QT在ui文件上建立信号操机制会不会对后期维护产生影响 分类: 学习心得 2 ...

  2. QT 建立信号和槽的联系(事件处理)

    Qt中事件处理机制叫做“信号”和“槽”signal &slot. 其模型为: 对象a中有一个信号signal:XXX(代表一个事件) 对象b中有一个槽slot:YYY(事件处理函数) 用con ...

  3. PyQt(Python+Qt)学习随笔:使用pyqtConfigure建立信号和槽的连接

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在PyQt中,一般信号和槽的连接是通过connect方法建立的,语法如下: connect(slot ...

  4. Qt Quick 事件处理之信号与槽

    前面两篇文章<QML 语言基础>和<Qt Quick 简单教程>中我们介绍了 QML 语言的基本的语法和 Qt Quick 的常见元素,亲们,通过这两篇文章,您应该已经能够完毕 ...

  5. QT信号槽机制

    信号槽 信号槽是QT中用于对象间通信的一种机制,也是QT的核心机制.在GUI编程中,我们经常需要在改变一个组件的同时,通知另一个组件做出响应.例如: 一开始我们的Find按钮是未激活的,用户输入要查找 ...

  6. Qt 信号和槽函数

    信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性.当某个信号被发射,就需要调用与之相绑定的槽函数.这与Windows下的消息机制类似,消息机制是基于回调函数.一个回调即是一个函数的 ...

  7. Linux下异常信号

    我们介绍一些标准信号的名称以及它们代表的事件.每一个信号名称是一个代表正整数的宏,但是你不要试图去推测宏代表的具体数值,而是直接使用名称.这是因为这个数值会随不同的系统或同样系统的不同版本而不同,但是 ...

  8. Qt Quick 事件处理之信号与槽(foruok的博客)

    前面两篇文章<QML 语言基础>和<Qt Quick 简单教程>中我们介绍了 QML 语言的基本语法和 Qt Quick 的常见元素,亲们,通过这两篇文章,您应该已经可以完成简 ...

  9. 用 VS Code 搞 Qt6:信号、槽,以及QObject

    Qt 里面的信号(Signal)和槽(Slot)虽然看着像事件,但它实际上是用来在两个对象之间进行通信的.既然是通信,就会有发送者和接收者. 1.信号是发送者,触发时通过特有的关键字"emi ...

随机推荐

  1. HDU 1711 Number Sequence (数字KMP,变形)

    题意: 在一个序列中找到一个连续的子序列,返回其开始位置. 思路: 每个数字当成1个字符,长的序列是原串,短的序列是模式串,求next数组后进行匹配. #include <iostream> ...

  2. boost多边形交集、并集

    交集:http://www.boost.org/doc/libs/1_56_0/libs/geometry/doc/html/geometry/reference/algorithms/interse ...

  3. 删除特定影响因素(字段列)下的重复记录(MySQL)

    ;CREATE TABLE TabTest ( `id` ) NOT NULL AUTO_INCREMENT ,`factorA` ) NOT NULL DEFAULT ' ' ,`factorB` ...

  4. blender2.7.4安装three.js插件

    将three.js-master\utils\exporters\blender\addons 下面的io_three文件夹,拷贝到blender安装目录:blender-2.74-windows64 ...

  5. myeclipse9 struts2配置

    引用struts2所用到的jar web.xml配置如下 <?xml version="1.0" encoding="UTF-8"?> <we ...

  6. 嵌入式 RTSP流媒体播放器实现

    最近需要做一个RTSP流媒体播放器,研究了一下,封装了一个RTSP播放类CRTSPPlayer,解码库采用ffmpeg.由于需求比较简单,时间也有限,目前只实现了播放.停止.暂停几个基本的接口.下面是 ...

  7. poj 1472(递归模拟)

    题意:就是让你求出时间复杂度. 分析:由于指数最多为10次方,所以可以想到用一个数组保存各个指数的系数,具体看代码实现吧! 代码实现: #include<cstdio> #include& ...

  8. [搜片神器]之DHT网络爬虫的代码实现方法

    继续接着第一篇写:使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源)[搜片神器] 谢谢园子朋友的支持,已经找到个VPS进行测试,国外的服务器: http://www.sosobta. ...

  9. jQuery选择器之全面总结

    选择器是jQuery的根基,在jQuery中,对事件处理,遍历DOM和Ajax操作都依赖于选择器.如果能熟练的使用选择器,不仅能简化代码,而且可以达到事半功倍的效果. jQuery中的选择器完全继承了 ...

  10. bzoj1391 最大权闭合子图(also最小割、网络流)

    一道裸的最小割的题,写一下只是练练手. 表示被卡M,RE不开心.一道裸题至于吗? 再次复习一下最大权闭合子图: 1.每一个点若为正权,与源点连一条容量为绝对值权值的边.否则连向汇点一条容量为绝对值权值 ...