OpenJudge NOI 2.1 7213:垃圾炸弹
admin
2024-02-25 10:28:37
0

【题目链接】

OpenJudge NOI 2.1 7213:垃圾炸弹

【题目考点】

1. 枚举

【解题思路】

解法1:枚举

可以枚举每个可能安放炸弹的位置,路口一共有1024∗1024≈1061024*1024\approx 10^61024∗1024≈106个

根据题意,当爆炸威力为d时,冲击波范围是个正方形,其边长为2d+12d+12d+1。
我们考虑当炸弹威力d为最大值50时,冲击波波及的正方形边长为2∗50+1=1012*50+1=1012∗50+1=101,这个范围内的位置有1012≈104101^2\approx 10^41012≈104个。
如果先枚举安放炸弹的位置,再枚举该炸弹波及的范围内的每个位置看这个位置有没有垃圾,那么总体复杂度会达到O(106∗104)=O(1010)O(10^6*10^4)=O(10^{10})O(106∗104)=O(1010),超过了O(107)O(10^7)O(107),是不可接受的。

考虑到有垃圾路口的数量n很小,最大值为20。那么我们在确定安放炸弹的位置后,枚举每个垃圾路口,看哪些垃圾路口在该炸弹的波及范围之内,将能被波及到的垃圾数量加和,即为在这里安装炸弹能销毁的垃圾数量。
枚举所有可以安放炸弹的位置:

  • 如果找到一个位置安放炸弹销毁的垃圾数量大于当前已知的最大垃圾销毁数量,那么可以安放炸弹的地点数量变为1。
  • 如果找到一个位置安放炸弹销毁的垃圾数量与当前已知最大垃圾销毁数量相同,那么可以安放炸弹的地点数量加1。

判断垃圾路口(i,j)是否在放在(x,y)位置的威力为d的炸弹波及范围内的方法:
垃圾路口在横向与纵向到(x,y)的距离都不能超过d。
即i与x的差值的绝对值要小于等于d,,同时j与y差值的绝对值要小于等于d,用代码表示为:abs(i-x)<= d && abs(j-y) <= d

【题解代码】

解法1:枚举

#include
using namespace std;
#define N 1030
struct Garbage
{int x, y, i;//(x,y)处有垃圾数量i	
}g[25];//g[i]:第i个垃圾路口 
int main()
{int d, n, mxSum = 0, ct;//mxSum:最大销毁垃圾数目 ct:可以销毁mxSum数量垃圾的炸弹安放位置数 cin >> d >> n;for(int i = 1; i <= n; ++i)cin >> g[i].x >> g[i].y >> g[i].i;		for(int i = 0; i <= 1024; ++i)for(int j = 0; j <= 1024; ++j){//在(i,j)位置放炸弹int sum = 0;//在(i,j)位置安放炸弹销毁的垃圾总和  for(int k = 1; k <= n; ++k)//看垃圾路口g[k]是否在(i,j)炸弹的范围之内 if(abs(i-g[k].x) <= d && abs(j-g[k].y) <= d)sum += g[k].i;if(sum > mxSum){mxSum = sum;//最大销毁垃圾数量ct = 1;//能销毁mxSum的炸弹位置变为1 }	else if(sum == mxSum)ct++;//能销毁mxSum的炸弹位置增加1}cout << ct << ' ' << mxSum;return 0;
}

相关内容

热门资讯

新能源汽车 电控 面试-电控技... 随着环境保护意识的不断增强和能源危机的日益严峻,新能源汽车正逐渐成为了人们关注的焦点。作为新能源汽车...
win7 activation... 对于那些想要在Windows 7操作系统上获得正版激活的用户来说,使用激活密钥是一个简单而有效的方法...
dns防劫持软件下载-DNS劫... 网络世界如同一片广袤的海洋,我们在其中畅游、探索、交流。然而,有时候,恶意的dns劫持却像饕餮般潜伏...
gps科目二考试系统-科目二考... 大家好,我是你们的训练教官。今天我要向大家介绍一款非常实用的科目二考试辅助系统——GPS科目二考试系...
老年护理院价格-老年护理院:营... 老年护理院是一个充满温情和关怀的地方。在这里,我们不仅提供专业的医疗护理,更注重给予老人们心灵上的慰...
汇编语言程序设计高福祥-儿童学... 汇编语言程序设计是计算机科学领域中的一门重要课程,它涉及到底层的计算机硬件和指令集。在这门课程中,我...
朝阳医院病案号怎么写-朝阳医院... 作为医院管理中的重要一环,病案号的正确填写对于医院的日常工作和患者信息管理具有至关重要的意义。朝阳医...
电脑缺失xlive.dll-如... 最近我在使用电脑时遇到了一个问题,就是提示缺失xlive.dll文件。这个文件是游戏或应用程序所需的...
品牌机ghost-极致性能电脑... 品牌机ghost,作为一款极具吸引力的高性能电脑品牌,以其卓越的技术和卓越的性能赢得了广大用户的喜爱...
slider控件滑动-如何优化... slider控件是一种常见的用户界面元素,它可以让用户通过滑动来选择或调整某个值。这种控件在现代应用...
胃病康复天涯论坛-胃不好怎么办... 胃是人体消化系统中非常重要的器官,但是胃病却给许多人带来了巨大的困扰。胃病不仅影响了人们的饮食和生活...
安易手机恢复软件-手机数据恢复... 手机已经成为我们生活中不可或缺的一部分,几乎记录了我们生活的方方面面。然而,有时候我们不小心删除了一...
c16009课后测验100分-... 嗨,大家好!我是这所学校的校长,今天我想和你们分享一个关于c16009课后测验的秘密。你们知道吗?这...
电脑桌面图标打不开怎么回事-电... 我是一台电脑,一个受人喜爱的工具。每天都有人来找我,点开我的图标,进入各种应用程序。可是有一天,我突...
全易通考勤管理系统标准版-智能... 全易通考勤管理系统标准版是一款专为企业打造的全面考勤解决方案。它采用先进的人脸识别技术和大数据分析,...
miui8哪个版本好用省电-小... MIUI8是小米公司推出的一款基于Android系统的操作界面。它以其简洁、流畅的设计,深受用户喜爱...
安卓系统耗电-安卓系统高耗电的... 安卓系统作为目前最流行的移动操作系统之一,被广泛应用于各类智能手机和平板电脑中。然而,很多用户都会遇...
windows xp系统盘-征... 在一个遥远的时代,一个名为Windows XP的操作系统诞生了。它像一颗明亮的星星,闪耀在计算机世界...
光盘装机教程-打造完美电脑主机... 1.一台电脑主机2.一张操作系统安装光盘或镜像文件3.一个可启动的光驱或USB驱动器4.必要的硬件驱...
绿云pms苹果下载-思越木结构... 绿云,一种神奇的存在。它是大自然的馈赠,是生命的源泉,更是人类心灵的寄托。在这个喧嚣而又繁忙的都市中...