shu_1241 邮局选址问题

http://202.121.199.212/JudgeOnline/problem.php?cid=1078&pid=5

分析: 因为题目中的距离是折线距离,所以可以分别考虑两个方向,又x方向与y方向实质是一样的,所以下面

用x方向来分析。

如图A为邮局:

若A在x所在范围的外围,则会增加重复,所以当在x范围的中间时距离最小。(y类似)

代码:

#include <iostream>
#include <stdio.h>
#include <string>
#include <string.h>
#include <algorithm>
using namespace std;
#define MAXN 10004

int n;
int x[MAXN],y[MAXN];

int my_abs(int a)
{
    return a<0? -a : a;
}

int calc(int s[])
{
    int sum=0;
    int mid=s[n/2];
    for(int i=0;i<n;i++) sum += my_abs(s[i]-mid);
    return sum;
}

void deal()
{
    int ans;
    ans=calc(x)+calc(y);
    printf("%d\n",ans);
}

int main()
{
    //freopen("in.txt","r",stdin);

    scanf("%d",&n);
    for(int i=0;i<n;i++)
        scanf("%d%d",&x[i],&y[i]);
    sort(x,x+n);
    sort(y,y+n);
    deal();
    return 0;
}

shu_1241 邮局选址问题

时间: 2024-07-31 08:54:29

shu_1241 邮局选址问题的相关文章

9.20 模拟试题

请注意,所有题目使用文件输入输出.输入文件名.输出文件名前缀同题目名前缀,输入文件名后缀为.in,输出文件名后缀为.out. 例如,对于第一题,输入文件为count.in,而输出文件名为count.out. TL.ML分别表示时间限制.内存限制. Good Luck & Have Fun   kAc A 约数之和(count.pas/c/cpp) TL:1S  ML:128MB [Description] 我们用D(x)表示正整数x的约数的个数.给定一个正整数N,求D(1)+D(2)+…+D(N

2017-9-20 NOIP模拟赛

A 约数之和 (count.pas/c/cpp)TL:1S ML:128MB[Description]我们用 D(x)表示正整数 x 的约数的个数.给定一个正整数 N,求 D(1)+D(2)+…+D(N).[Input]一行一个正整数 N.[Output]一行一个整数,表示答案[Sample Input]5[Sample Output]10[Hint]样例解释:D(1)=1 D(2)=2D(3)=2 D(4)=3 D(5)=2对于 20%的测试数据:N<=1000对于 50%的测试数据:N<=

POJ 1160 经典区间dp

链接http://poj.org/problem?id=1160 很好的一个题,涉及到了以前老师说过的一个题目,可惜没往那上面想. 题意,给出N个城镇的地址,他们在一条直线上,现在要选择P个城镇建立邮局,使得每个城镇到离他最近的邮局距离的总和尽量小. 首先提一个这个问题的简化版本,如果P=1得话,这个距离是多少呢? 这个问题的解就是将这个唯一的邮局建在(l+r)/2的位置,答案就是最优解, 这个类似于中位数的概念,我们有一个数学归纳法简单的证明 数轴上有n个点,求到这n个点距离最小的一个点   

程序员代码面试指南 IT名企算法与数据结构题目最优解 ,左程云著pdf高清版免费下载

下载地址:网盘下载 备用地址:网盘下载 内容简介  · · · · · ·这是一本程序员面试宝典!书中对IT名企代码面试各类题目的最优解进行了总结,并提供了相关代码实现.针对当前程序员面试缺乏权威题目汇总这一痛点,本书选取将近200道真实出现过的经典代码面试题,帮助广大程序员的面试准备做到万无一失.“刷”完本书后,你就是“题王”!__eol__本书采用题目+解答的方式组织内容,并把面试题类型相近或者解法相近的题目尽量放在一起,读者在学习本书时很容易看出面试题解法之间的联系,使知识的学习避免碎片化

利用高德地图完成用户地图选址,包括搜索位置和标签固定居中

这两天一直捣鼓着地图的选址功能,需要达到的要求是:1,能用户定位  2,大头针固定在地图中心,拖动地图停止后获取到该大头针的位置信息    3,能通过搜索框搜索到我们输入的地址 主要思路:大头针分为两个   一个是用户的位置大头针  另一个是所选取的位置的大头针(包括拖动后的大头针和搜索功能查找到位置的大头针,公用一个大头针  )并且两个大头针都成为控制器器属性. 我使用到的高德地图sdk是: 'AMap3DMap' , '5.2.1' #高德3D地图 'AMapSearch' , '5.2.1

project4电子邮局

www.extmail.net 本章目录: 1.电子邮局介绍(成员的组成及工作原理) 2.回顾分析第一阶段的邮局系统:        postfix(MTA smtp)+dovecot(pop3/imap)+squirrelmail(webmail)+apache+php+DNS 3.分析虚拟用户邮局系统:              postfix(MTA+maildrop+(MDA)couier-imap(MUA)+courier-authlib+apache(extmail/exman)+m

【NOIP之旅】NOIP2014 day2 T1 无线网络发射器选址

1.无线网络发射器选址 (wireless.cpp/c/pas) [问题描述] 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的129条东西向街道和129条南北向街道所形成的网格状,并且相邻的平行街道之间的距离都是恒定值1.东西向街道从北到南依次编号为0,1,2…128,南北向街道从西到东依次编号为0,1,2…128. 东西向街道和南北向街道相交形成路口,规定编号为x的南北向街道和编号为y的东西向街道形成的路口的坐标是(

963邮局iPhone、iPod、touch如何设置邮箱

iPhone/iPod touch如何设置邮箱 下面将指导大家怎样在iPhone/iPod touch中设置使用963企业邮箱,下面以iPod touch为例. 1.首先打开iPod touch,进入"设置"中的"邮件.通讯录.日历"选项. 2.点击"添加帐户",将出现以下界面,再点击"其他",再点击"添加邮件账户" 3.进入之后可以看到设置界面,如下图所示.我这里就例举[email protected]9

【BZOJ1835】[ZJOI2010]base 基站选址 线段树+DP

[BZOJ1835][ZJOI2010]base 基站选址 Description 有N个村庄坐落在一条直线上,第i(i>1)个村庄距离第1个村庄的距离为Di.需要在这些村庄中建立不超过K个通讯基站,在第i个村庄建立基站的费用为Ci.如果在距离第i个村庄不超过Si的范围内建立了一个通讯基站,那么就成它被覆盖了.如果第i个村庄没有被覆盖,则需要向他们补偿,费用为Wi.现在的问题是,选择基站的位置,使得总费用最小. 输入数据 (base.in) 输入文件的第一行包含两个整数N,K,含义如上所述. 第