激光炸弹

HYSBZ - 1218
Time limit:10000 ms
Memory limit:165888 kB
OS:Linux
Source:HNOI2003

一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标。现在地图上有n(N<=10000)个目标,用整数Xi,Yi(其值在[0,5000])表示目标在地图上的位置,每个目标都有一个价值。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆破范围,即那个边长为R的正方形的边必须和x,y轴平行。若目标位于爆破正方形的边上,该目标将不会被摧毁。

Sample Output1
Input

输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示xi,yi,vi

Output

输出文件仅有一个正整数,表示一颗炸弹最多能炸掉地图上总价值为多少的目标(结果不会超过32767)。

Sample Input2 1
0 0 1
1 1 1

OJ-ID:
bzoj-1218

author:
Caution_X

date of submission:
20191117

tags:
二维数组前缀和

description modelling:
输入:N,R,xi,yi,vi,表示N个点,二维矩阵a[xi][yi]=vi
现在用长度为R的矩阵作为子矩阵,问这个矩阵权值和的最大值

major steps to solve it:
(1)输入a[][],在a[][]的基础上计算二维数组前缀和int tmp=a[i][j],a[i][j]=a[i-1][j]+a[i][j-1]-a[i-1][j-1]+tmp。
(2)从右下角枚举所有点,计算答案

warnings:
注意内存限制,重复利用数组,否则MLE

时间很足,可以暴力枚举所有点

AC code:

#include<bits/stdc++.h>
using namespace std;
int a[][];
int main()
{
int n,r;
scanf("%d%d",&n,&r);
for(int i=;i<n;i++)
{
int x,y,v;
scanf("%d%d%d",&x,&y,&v);
a[x+][y+]=v;
}
for(int i=;i<=;i++)
for(int j=;j<=;j++)
{
int tmp=a[i][j];
a[i][j]=a[i-][j]+a[i][j-]-a[i-][j-]+tmp;
}
int ans=;
for(int i=;i-r>=;i--)
{
for(int j=;j-r>=;j--)
{
ans=max(a[i][j]-a[i-r][j]-a[i][j-r]+a[i-r][j-r],ans);
}
}
printf("%d\n",ans);
return ;
}

最新文章

  1. SqlServer切换MySql总结
  2. 关于STM32-MDK中preprocessor symbols解释
  3. 使用detours实现劫持
  4. van Emda Boas
  5. 【转】linux下安装opencv
  6. 请问如何在PS中将一张图标里的各个小图标分离成一个个图标?
  7. vue2.0父子组件以及非父子组件如何通信
  8. codeforces 798c Mike And Gcd Problem
  9. vue day4 table
  10. AndroidStudio制作“我”的界面,设置,修改密码,设置密保和找回密码
  11. 外边距塌陷 margin collapsing
  12. web前端名人的博客微博Githu
  13. 通过代码动态创建Windows服务
  14. Html学习笔记3
  15. 关于electron的跨域问题,有本地的图片的地址,访问不了本地的图片
  16. frm和ibd恢复sql文件的操作
  17. PHP中文件操作(1)--打开/读取文件
  18. mysql 优化总结
  19. 【记录】css样式
  20. 【EF】EF框架 Code First Fluent API

热门文章

  1. 2019-2020-3 20199317《Linux内核原理与分析》第三周作业
  2. 物缘科技主导IEEE可信物联网数据管理工作组启动会召开
  3. docker-primary
  4. 这是一个测试 hello world
  5. 暗灰色的圆形按钮.html
  6. 关于flask-sqlalchemy的用法研究
  7. [TimLinux] Python __hash__ 可哈希集合
  8. [TimLinux] CPU 常见架构介绍
  9. (全国多校重现赛一)B-Ch's gifts
  10. 洛谷 题解 P1025 【数的划分】