街区最短路径问题

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 4
描述
一个街区有很多住户,街区的街道只能为东西、南北两种方向。

住户只可以沿着街道行走。

各个街道之间的间隔相等。

用(x,y)来表示住户坐在的街区。

例如(4,20),表示用户在东西方向第4个街道,南北方向第20个街道。

现在要建一个邮局,使得各个住户到邮局的距离之和最少。

求现在这个邮局应该建在那个地方使得所有住户距离之和最小;

输入
第一行一个整数n<20,表示有n组测试数据,下面是n组数据;
每组第一行一个整数m<20,表示本组有m个住户,下面的m行每行有两个整数0<x,y<100,表示某个用户所在街区的坐标。
m行后是新一组的数据;
输出
每组数据输出到邮局最小的距离和,回车结束;
样例输入
2
3
1 1
2 1
1 2
5
2 9
5 20
11 9
1 1
1 20
样例输出
2
44

AC代码:

#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
const int INF = 1e9;
const int maxn = 20 +2;
int x[maxn],y[maxn];int main(){int n;scanf("%d",&n);while(n--){int m;scanf("%d",&m);for(int i = 1; i <= m; i++)scanf("%d%d",&x[i],&y[i]);int Min = INF;for(int i = 1; i < 100; i++){for(int j = 1; j < 100; j++){int tmp = 0;for(int k = 1; k <= m; k++){tmp += abs(i - x[k]) + abs(j - y[k]);}Min = min(Min,tmp);}}printf("%d\n",Min);}    return 0;
} 

方法二:

#include<cstdio>
#include<algorithm>
using namespace std;
const int maxn = 20 +2;
int x[maxn],y[maxn];
int main(){int n;scanf("%d",&n);while(n--){int m;scanf("%d",&m);for(int i = 1; i <= m; i++)scanf("%d%d",&x[i],&y[i]);sort(x,x+m+1);sort(y,y+m+1);int sum = 0;for(int i = 1; i <= m/2; i++)sum += (x[m-i+1] - x[i]) + (y[m-i+1] - y[i]);printf("%d\n",sum);}return 0;
}

nyoj 7街区最短路径问题(暴力 || 哈曼顿距离)相关推荐

  1. nyoj 7 街区最短路径问题 暴力枚举

    街区最短路径问题 , 题目链接 , 点在这里. 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向.住户只可以沿着街道行走 ...

  2. nyoj 7 街区最短路径问题 (曼哈顿距离(出租车几何) or 暴力)

    街区最短路径问题 时间限制: 3000 ms  |  内存限制:65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间 ...

  3. NYOJ 7 街区最短路径问题

    街区最短路径问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间隔相 ...

  4. NYOJ 街区最短路径问题

    [题目链接] 街区最短路径问题 [解决思路] 方法一.本来想用暴力破解法的. 就是从(0,0)点,到最后一个点,中间所有的点都计算一遍.但是想了一下,这个方法效率实在是太慢了. 但是碍于本人数学水平不 ...

  5. 【NYOJ】题目7街区最短路径

    街区最短路径问题 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的 ...

  6. NYOJ——街区最短路径问题

    街区最短路径问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间隔相 ...

  7. 街区最短路径问题-简单数论

    街区最短路径问题 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的 ...

  8. nyoj7街区最短路径问题

    题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=7 或者: http://115.159.40.116/problem_show.php? ...

  9. 题目7 街区最短路径问题

    为什么80%的码农都做不了架构师?>>>    街区最短路径问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述一个街区有很多住户,街区的街道只能为东西 ...

最新文章

  1. ABAP memory中的Export和Import
  2. python语言用什么来表明每行代码的层次关系_2021年尔雅通识课《切削原理与刀具》课后习题答案...
  3. mysql 版本太高_mysql创建新库以及解决版本过高8.0以上导致navicat无法连接的问题...
  4. 华为鸿蒙万物互联应用,为什么我需要万物互联? 鸿蒙能带来什么?
  5. java互喷群,夸夸群和喷喷群的心里需求和投资如此相似
  6. C语言及程序设计进阶例程-30 联合体及其应用
  7. java中如何表示圆周率
  8. win10 休眠设置无效_win10休眠设置无效的解决教程
  9. java首字母变大写_Java 首字母转大写
  10. Mac版Sublime Text3搭建c语言环境
  11. python boxplot的使用方法
  12. html页面设置账号密码,html登录界面设置账号密码
  13. Zookeeper端口和ip修改
  14. java gui论文_毕业设计论文-基于JAVA GUI的电子邮件客户端软件的设计与实现.doc
  15. 武候祠:一千七百年的沉思
  16. 计算机二级vb考试代码,二级计算机vb考试常用代码(看完必过).doc
  17. 视觉会议收藏二(评论)
  18. 【翻译】(design-2)风格
  19. CSDN如何转载别人的博客
  20. 从零开始的图像语义分割:FCN快速复现教程(Pytorch+CityScapes数据集)

热门文章

  1. python re正则匹配数字类型int or float
  2. 什么是随机?完美的随机性真的存在吗?生成的方法究竟为何?
  3. 虚拟机重启后nginx无法启动nginx: [emerg] open() “/var/run/nginx/nginx.pid“ failed (2: No such file or direc 问题:
  4. 定义一个Ladder类用来刻画“梯形”,要求:Ladder类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能。
  5. 趣谈C++之void是什么?
  6. 使用jqPaginator分页
  7. 操作系统——调度算法
  8. 使用HGE模拟“苍之涛”的GUI
  9. 快递专用吊钩秤PCBA方案
  10. 计算机与软件学院辅导员陈伯亨,志存高远 不负韶华