UVA 10360 Rat Attack
2015-06-27 10:22
309 查看
Rat Attack
Input: standard inputOutput: standardoutput
Time Limit: 7 seconds
Memory Limit: 32 MB
Baaaam! Another deadly gas bomb explodes in Manhattan’sunderworld. Rats have taken over the sewerage and the city council is doing everything to get the rat population under control.
As you know, Manhattanis organized in a regular fashion with streets and avenues arranged like arectangular grid. Waste water drains run beneath the streets in the samearrangement and the rats have always set up their nests below streetintersections. The only viable method to extinguish them is to use gas bombslike the one which has just exploded. However, gas bombs are not only dangerousfor rats. The skyscrapers above the explosion point have to be evacuated inadvance and so the point of rat attack must be chosen very carefully.
The gas bombs used are built by a company called AmericanCatastrophe Management (ACM) and they are sold under the heading of“smart rat gas”. They are smart because — when fired —the gas spreads in a rectangular fashion through the under street canals. Thestrength of a gas bomb is given by a number d which specifies the rectangular“radius” of the gas diffusion area. For example, Figure 2 showswhat happens when a bomb with d = 1 explodes.
The Problem
The area of interest consists of a discrete grid of 1025× 1025 fields. Rat exterminator scouts have given a detailed report onwhere rat populations of different sizes have built their nests. You are givena gas bomb with strength d and your task is to find an explosion location forthis gas bomb which extinguishes the largest number of rats.
The best position is determined by the following criteria:
• The sum of all rat population sizes within thediffusion area of the gas bomb (given by d) is maximal.
• If there is more than one of these best positionsthen the location with the “minimal” position will be chosen.Positions are ordered first by their x coordinate and second by their ycoordinate.
Formally, given a location (x1, y1) on the grid, a point(x2, y2) is within the diffusion area of a gas bomb with strength d if thefollowing equation holds:
max (abs(x2 -x1), abs (y2 - y1)) <= d
Input
The first line contains the number of scenarios in theinput.For each scenario the first line contains the strength d of the gas bombin the scenario (1<= d <= 50). The secondline contains the number n (1<= n <= 20000) of ratpopulations. Then for every rat population follows a line containing threeintegers separated by spaces for the position (x, y) and “size” i of thepopulation (1 <= i <= 255). It isguaranteed that position coordinates are valid (i.e., in the range between 0and 1024) and no position is given more than once.
Output
For every problem print a line containing the x and ycoordinate of the chosen location for the gas bomb, followed by the sum of therat population sizes which will be extinguished. The three numbers must beseparated by a space.Sample Input
11
2
4 4 10
6 6 20
Sample Output
5 5 30对于每个找到的炸弹找出其作用范围内杀死的总数,构成新的数列表明在该处应该被杀死的老鼠的数量。
与原来的老鼠存在数列比较,核对出最后杀死的老鼠数量。
#include<stdio.h> #include<string.h> int a[1050][1050]; int main(){ int t,d,n,i,j,k,m,x,y,p; scanf("%d",&t); while(t--){ memset(a,0,sizeof(a)); scanf("%d%d",&d,&n); for(i=0;i<n;i++){ scanf("%d%d%d",&x,&y,&p); for(k=((x-d>0)?(x-d):0);k<=((x+d>=1030)?1030:(x+d));k++) for(m=((y-d>0)?(y-d):0);m<=((y+d>=1030)?1030:(y+d));m++) a[k][m]+=p; } int max=0,mx,my; for(i=0;i<1030;i++) for(j=0;j<1030;j++) if(a[i][j]>max){ max=a[i][j]; mx=i; my=j; } printf("%d %d %d\n",mx,my,max); } return 0; }
相关文章推荐
- HTML学习笔记(四)_HTML5常用元素与属性
- MFC 读取目录中的文件 相对路径
- oracle存储过程及Java调用(转)
- 安全之公开密钥基本知识
- VirtualBox导入XXXX.vdi时报错
- win10手机预览版10149下载点击安装没有反应的解决办法
- 口碑网重生上头条 阿里巴巴和蚂蚁金服注资 60亿
- 网络以及协议基础知识总结
- bundle install
- Ubuntu下和VirtualBox建立ssh无密码访问问题
- 浅析linux内核内存管理之buddy system
- 听说 新东方 的健身房有游泳池,听说 小米 的牛人很多
- Java中对象、对象引用、堆、栈、值传递以及引用传递的详细解释
- LeetCode Combination Sum & Combination Sum II
- MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法
- 数据库的隔离级别
- TCP/UDP详解二
- HTML学习笔记(三)_HTML5常用元素与属性
- 仰视源码,实现strcpy
- (3)android 图片编辑要注意的点