shu_1241 邮局选址问题

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


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

            用x方向来分析。

            如图A为邮局:

             shu_1241 邮局选址问题_第1张图片

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


代码:

#include 
#include 
#include 
#include 
#include 
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



你可能感兴趣的:(简单题,简单题)