nyoj 7街区最短路径问题(暴力 || 哈曼顿距离)
街区最短路径问题
- 描述
-
一个街区有很多住户,街区的街道只能为东西、南北两种方向。
住户只可以沿着街道行走。
各个街道之间的间隔相等。
用(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街区最短路径问题(暴力 || 哈曼顿距离)相关推荐
- nyoj 7 街区最短路径问题 暴力枚举
街区最短路径问题 , 题目链接 , 点在这里. 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向.住户只可以沿着街道行走 ...
- nyoj 7 街区最短路径问题 (曼哈顿距离(出租车几何) or 暴力)
街区最短路径问题 时间限制: 3000 ms | 内存限制:65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间 ...
- NYOJ 7 街区最短路径问题
街区最短路径问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间隔相 ...
- NYOJ 街区最短路径问题
[题目链接] 街区最短路径问题 [解决思路] 方法一.本来想用暴力破解法的. 就是从(0,0)点,到最后一个点,中间所有的点都计算一遍.但是想了一下,这个方法效率实在是太慢了. 但是碍于本人数学水平不 ...
- 【NYOJ】题目7街区最短路径
街区最短路径问题 时间限制: 3000 ms | 内存限制: 65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的 ...
- NYOJ——街区最短路径问题
街区最短路径问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的间隔相 ...
- 街区最短路径问题-简单数论
街区最短路径问题 时间限制: 3000 ms | 内存限制: 65535 KB 难度: 4 描述 一个街区有很多住户,街区的街道只能为东西.南北两种方向. 住户只可以沿着街道行走. 各个街道之间的 ...
- nyoj7街区最短路径问题
题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=7 或者: http://115.159.40.116/problem_show.php? ...
- 题目7 街区最短路径问题
为什么80%的码农都做不了架构师?>>> 街区最短路径问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述一个街区有很多住户,街区的街道只能为东西 ...
最新文章
- ABAP memory中的Export和Import
- python语言用什么来表明每行代码的层次关系_2021年尔雅通识课《切削原理与刀具》课后习题答案...
- mysql 版本太高_mysql创建新库以及解决版本过高8.0以上导致navicat无法连接的问题...
- 华为鸿蒙万物互联应用,为什么我需要万物互联? 鸿蒙能带来什么?
- java互喷群,夸夸群和喷喷群的心里需求和投资如此相似
- C语言及程序设计进阶例程-30 联合体及其应用
- java中如何表示圆周率
- win10 休眠设置无效_win10休眠设置无效的解决教程
- java首字母变大写_Java 首字母转大写
- Mac版Sublime Text3搭建c语言环境
- python boxplot的使用方法
- html页面设置账号密码,html登录界面设置账号密码
- Zookeeper端口和ip修改
- java gui论文_毕业设计论文-基于JAVA GUI的电子邮件客户端软件的设计与实现.doc
- 武候祠:一千七百年的沉思
- 计算机二级vb考试代码,二级计算机vb考试常用代码(看完必过).doc
- 视觉会议收藏二(评论)
- 【翻译】(design-2)风格
- CSDN如何转载别人的博客
- 从零开始的图像语义分割:FCN快速复现教程(Pytorch+CityScapes数据集)
热门文章
- python re正则匹配数字类型int or float
- 什么是随机?完美的随机性真的存在吗?生成的方法究竟为何?
- 虚拟机重启后nginx无法启动nginx: [emerg] open() “/var/run/nginx/nginx.pid“ failed (2: No such file or direc 问题:
- 定义一个Ladder类用来刻画“梯形”,要求:Ladder类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能。
- 趣谈C++之void是什么?
- 使用jqPaginator分页
- 操作系统——调度算法
- 使用HGE模拟“苍之涛”的GUI
- 快递专用吊钩秤PCBA方案
- 计算机与软件学院辅导员陈伯亨,志存高远 不负韶华