题目描述

随着智能手机的日益普及,人们对无线网的需求日益增大。某城市决定对城市内的公共场所覆盖无线网。

假设该城市的布局为由严格平行的 \(129\) 条东西向街道和 \(129\) 条南北向街道所形成的网格状,并且相邻的平行街道之间的距离都是恒定值$ 1$。东西向街道从北到南依次编号为 \(0,1,2...128\)和\(0,1,2…128\),南北向街道从西到东依次编号为$ 0,1,2…128$。

东西向街道和南北向街道相交形成路口,规定编号为 \(x\) 的南北向街道和编号为 \(y\) 的东西向街道形成的路口的坐标是$ (x, y)$。在某些路口存在一定数量的公共场所。

由于政府财政问题,只能安装一个大型无线网络发射器。该无线网络发射器的传播范围是一个以该点为中心,边长为 $2d $的正方形。传播范围包括正方形边界。

现在政府有关部门准备安装一个传播参数为 $d $的无线网络发射器,希望你帮助他们在城市内找出合适的路口作为安装地点,使得覆盖的公共场所最多。

输入格式

第一行包含一个整数$ d$,表示无线网络发射器的传播距离。

第二行包含一个整数 \(n\),表示有公共场所的路口数目。

接下来 n 行,每行给出三个整数$ x, y, k,\(中间用一个空格隔开,分别代表路口的坐标\) (x, y)$ 以及该路口公共场所的数量。同一坐标只会给出一次。

输出格式

输出一行,包含两个整数,用一个空格隔开,分别表示能覆盖最多公共场所的安装地点方案数,以及能覆盖的最多公共场所的数量。

输入输出样例

输入 #1 复制

1
2
4 4 10
6 6 20

输出 #1 复制

1 30

说明/提示

对于\(100%\)的数据,\(1 \leq d \leq 20, 1 \leq n \leq 20,0 \leq x \leq 128 , 0 \leq y \leq 128 , 0 < k \leq 1000000,1≤d≤20,1≤n≤20,0≤x≤128,0≤y≤128,0<k≤1000000\)

解析:

一道简单的模拟题。

因为是\(129 \times 129\)的方阵,所以我们可以枚举每一个点

然后以该点为中心开始对四周可以扫到的点累加和

我们开了两个变量来记录,

\(num\)记录最大值的个数,\(ans\)记录最大值,

有一个显然的结论就是

我们更换最大值的时候就可以把num替换为1

与此值相同或者更大的数一定会在后面。

感性理解。

#include <cstdio>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstring>
#include <queue>
#include <stack>
#include <vector>
#include <set>
#define re register
#define Max 130
int n,ans = 0,d,g[Max][Max],num;
inline void init() {scanf("%d%d",&d,&n);int x,y,k;for(re int i = 1 ; i <= n ; ++ i)scanf("%d%d%d",&x,&y,&k),g[x][y] = k;
}
void work() {int max_place;for(re int i = 0 ; i <= 128 ; ++ i)for(re int j = 0 ; j <= 128 ; ++ j) {max_place = 0;for(re int a = -d ; a <= d ; ++ a)for(re int b = -d ; b <= d ; ++ b)if(a + i >= 0 && a + i <= 128 && b + j <= 128 && b + j >= 0)//判断边界情况max_place += g[a+i][b+j];if(max_place == ans) num++;if(max_place > ans) ans = max_place, num = 1;}
}
inline void print() {printf("%d %d",num,ans);}
int main() {init();work();print();return 0;
}

转载于:https://www.cnblogs.com/handsomegodzilla/p/11442907.html

洛谷P2038 无线网络发射器选址相关推荐

  1. P2038 无线网络发射器选址

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的 129 条东西向街道和 129 条南北向街道所形成的网格状,并且 ...

  2. NOIp 2014 #4 无线网络发射器选址 Label:模拟

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的129 条东西向街道和129 条南北向街道所形成的网格状,并且相邻 ...

  3. [T][2]NOIP 2014 无线网络发射器选址

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的129 条东西向街道和129 条南北向街道所形成的网格状,并且相邻 ...

  4. noip2014 无线网路发射器选址 (模拟)

    P1908无线网路发射器选址 Accepted 标签:模拟NOIP提高组2014 描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为 ...

  5. 洛谷P1262 间谍网络题解

    洛谷P1262 间谍网络题解 题目大意 题目描述 由于外国间谍的大量渗入,国家安全正处于高度的危机之中.如果 A 间谍手中掌握着关于 B 间谍的犯罪证据,则称 A 可以揭发 B.有些间谍收受贿赂,只要 ...

  6. 洛谷P1991 无线通讯网

    P1991 无线通讯网 170通过 539提交 题目提供者洛谷OnlineJudge 标签图论 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 怎么又炸了 为啥一直40!求解! UKE:inv ...

  7. 洛谷P1546 最短网络 Agri-Net

    P1546 最短网络 Agri-Net 526通过 959提交 题目提供者JOHNKRAM 标签图论贪心USACO 难度普及/提高- 提交该题 讨论 题解 记录 最新讨论 50分C++代码,求解 请指 ...

  8. 洛谷——P1546 最短网络 Agri-Net

    P1546 最短网络 Agri-Net 题目背景 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场.当然,他需要你的帮助. 题目描述 约翰已经给他的农场安排了一 ...

  9. 洛谷 1546 最短网络

    题目描述: 约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场.为了用最小的消费,他想铺设最短的光纤去连接所有的农场.你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农 ...

最新文章

  1. Matlab编程与数据类型 -- 单元数组
  2. 抛开设计模式,软件设计的微思考
  3. STM32 进阶教程 16 - ADC1与ADC2同步采样
  4. 在docker上调用宿主机硬件_Docker精华问答:Docker与虚拟机的区别?| 技术头条
  5. 1.13 南京站 | 2022 开年 Serverless 沉浸式技术实践营开始报名
  6. E. Colorings and Dominoes(未解决)
  7. 前端学习(3050):vue+element今日头条管理-表格组件基本使用
  8. springboot和quartz整合实现动态定时任务(持久化单节点)
  9. 数电与模电的根本区别 转
  10. Android辅助开发工具说明
  11. 微信hash ajax,基于vue hash模式微信分享#号的解决
  12. 第四章 Python数据预处理之划分训练集与测试集
  13. 信息学奥赛一本通(C++版) 第三部分 数据结构 第四章 图论算法
  14. JS处理支付宝H5支付
  15. 网络营销的4p营销理论
  16. 微信小程序实现朋友圈图片展现形式
  17. 你真的理解亲密关系的价值吗?
  18. windows提权速查流程
  19. dos攻击的工具——pentmenu
  20. 找出列表中的偶数位元素

热门文章

  1. java_软件发布版本_Asynch HttpClien 对比发行版本说明_Alpha、Beta、RC、GA版本的区别...
  2. Firefox v5 正式版
  3. 多写写 leetcode 43. 字符串相乘
  4. 马斯克:人脑“带宽”有限,需要用人工智能加持提高连接速度
  5. 黑马程序员Linux系统开发视频之mmap使用注意事项
  6. 人工智能带来科技浪潮的同时,对相关法治领域提出了什么样的挑战?
  7. Visual Studio 2019连接自动的Sql Server开发版数据库(C#语言)
  8. GetOverlappedResult取操作结果
  9. php修改手机号业务逻辑层,PHP实现极限业务逻辑重用的基础教程
  10. 内存泄漏和内存溢出有什么区别