题目传送门

  

题目描述

输入输出格式

输入格式:

输入文件名为input.txt

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

输出格式:

输出文件名为output.txt

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

输入输出样例

输入样例#1: 复制

2 1
0 0 1
1 1 1
输出样例#1: 复制

  1


  分析:也没什么好分析的,基本的前缀和,用下容斥原理,注意一下边界就可以了。

  Code:(稍微有点乱,将就下吧)

  

#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<iostream>
#include<iomanip>
#include<algorithm>
#define Fi(i,a,b) for(int i=a;i<=b;i++)
using namespace std;
const int N=5e3+;
int ans,n,m,a[N][N],maxx;
int main()
{
ios::sync_with_stdio(false);
cin>>n>>m;int x,y,v;
Fi(i,,n){cin>>x>>y>>v;a[x][y]=v;maxx=max(maxx,max(x,y));}
Fi(i,,maxx)a[i][]=a[i][]+a[i-][],a[][i]=a[][i]+a[][i-];
Fi(i,,maxx)Fi(j,,maxx)
{a[i][j]=a[i][j]+a[i-][j]+a[i][j-]-a[i-][j-];}
Fi(i,m,maxx)ans=max(ans,max(a[i][m-]-a[i-m][m-],a[m-][i]-a[m-][i-m]));
Fi(i,m,maxx)Fi(j,m,maxx)
{ans=max(ans,a[i][j]-a[i-m][j]-a[i][j-m]+a[i-m][j-m]);}
cout<<ans<<"\n";return ;
}

洛谷P2280 [HNOI2003] 激光炸弹 [前缀和]的更多相关文章

  1. 洛谷P2280 [HNOI2003]激光炸弹

    P2280 [HNOI2003]激光炸弹 题目描述 输入输出格式 输入格式: 输入文件名为input.txt 输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示 xi,yi ...

  2. P2280 [HNOI2003]激光炸弹[前缀和]

    题目描述 输入输出格式 输入格式: 输入文件名为input.txt 输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示 xi,yi ,vi . 输出格式: 输出文件名为out ...

  3. BZOJ 1218: [HNOI2003]激光炸弹( 前缀和 + 枚举 )

    虽然source写着dp , 而且很明显dp可以搞...但是数据不大 , 前缀和 + 枚举也水的过去..... -------------------------------------------- ...

  4. BZOJ 1218: [HNOI2003]激光炸弹 前缀DP

    1218: [HNOI2003]激光炸弹 Description 一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标.现在地图上有n(N<=10000)个目标,用整数Xi,Yi(其值 ...

  5. P2280 [HNOI2003]激光炸弹(二维前缀和)

    题目描述 一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标.现在地图上有n(n≤10000)个目标,用整数xi,yi(0≤xi,yi≤5000)表示目标在地图上的位置,每个目标都有一个价 ...

  6. P2280 [HNOI2003]激光炸弹

    题目描述 输入输出格式 输入格式: 输入文件名为input.txt 输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示 xi,yi ,vi . 输出格式: 输出文件名为out ...

  7. LUOGU P2280 [HNOI2003]激光炸弹

    传送门 解题思路 二维前缀和. 代码 #include<iostream> #include<cstdio> #include<cstring> using nam ...

  8. bzoj 1218 [HNOI2003]激光炸弹 二维前缀和

    [HNOI2003]激光炸弹 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3022  Solved: 1382[Submit][Status][Di ...

  9. bzoj1218: [HNOI2003]激光炸弹(DP二维前缀和)

    1218: [HNOI2003]激光炸弹 题目:传送门 题解: 一道经典题目啊... 为了更好的操作...把整个坐标系向右上角移动,从(1,1)开始 那么f[i][j]统计一下以(i,j)作为右上角, ...

随机推荐

  1. [LeetCode] 6. ZigZag Conversion ☆☆☆

    The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...

  2. DBA操作常用命令

    一.ORACLE的启动和关闭   1.在单机环境下   要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下   su - oracle      a.启动ORACLE系统   orac ...

  3. ICPC2017 Urumqi - K - Sum of the Line

    题目描述 Consider a triangle of integers, denoted by T. The value at (r, c) is denoted by Tr,c , where 1 ...

  4. 如何生成Java Key以及sign一个jar

    1. 生成Java Key: keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize mydomain ...

  5. EntitySpace 常用语句

    EntitySpace 这个是很早期的ORM框架,最近发现这个破解的也都不能用了.有谁知道能用的,联系我. 1. where带几个条件的 query.Where(query.ProductTempSt ...

  6. 【BZOJ】1385 [Baltic2000]Division expression

    [算法]欧几里德算法 [题解]紫书原题 #include<cstdio> #include<algorithm> using namespace std; ; int T,t, ...

  7. 牛客网刷题(纯java题型 1~30题)

    牛客网刷题(纯java题型 1~30题) 应该是先extend,然后implement class test extends A implements B { public static void m ...

  8. elementui raido 单选框 循环渲染加:key

    <el-radio-group v-model="adminRole"> <el-radio v-for="item in adminRoles&quo ...

  9. javascript中的addEventListener与attchEvent

    1.addEventListener 该方法用于向指定元素添加事件句柄 浏览器的支持情况为chrome1.0.ie9+.fireFox1.0.opera7.0 该方法包含三个参数event, func ...

  10. <script>标签的属性

    1.async 表示立即下载资源,但不妨碍下载其他资源或等待加载其他脚本,脚本相对于页面的其它部分异步执行,只对外部脚本文件有效 2.defer 表示脚本可以延迟到文档完全被解析和显示之后再执行,只对 ...