HDU1559
最大子矩阵
Time Limit: 30000/10000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5199 Accepted Submission(s): 2747
Problem Description
Input
Output
Sample Input
4 5 2 2
3 361 649 676 588
992 762 156 993 169
662 34 638 89 543
525 165 254 809 280
Sample Output
Author
Source
//2017-09-24
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm> using namespace std; const int N = ; int a[N][N], dp[N][N], n, m, x, y; int main()
{
int T;
scanf("%d", &T);
while(T--){
scanf("%d%d%d%d", &n, &m, &x, &y);
for(int i = ; i < n; i++)
for(int j = ; j < m; j++){
scanf("%d", &a[i][j]);
dp[i][j] = a[i][j];
}
for(int i = ; i < n; i++)
for(int j = ; j < m; j++)
dp[i][j] += dp[i-][j];
for(int j = ; j < m; j++)
for(int i = ; i < n; i++)
dp[i][j] += dp[i][j-];
int ans = ;
for(int i = x-; i < n; i++)
for(int j = y-; j < m; j++){
int a = i-x+;
int b = j-y+;
int tmp = dp[i][j];
if(a->=)tmp -= dp[a-][j];
if(b->=)tmp -= dp[i][b-];
if(a->= && b->=)tmp += dp[a-][b-];
ans = max(ans, tmp);
}
printf("%d\n", ans);
} return ;
}
HDU1559的更多相关文章
- 最大子矩阵hdu1559(二维前缀和)
最大子矩阵hdu1559 Problem Description 给你一个m×n的整数矩阵,在上面找一个x×y的子矩阵,使子矩阵中所有元素的和最大. Input 输入数据的第一行为一个正整数T,表示有 ...
- HDU1559 最大子矩阵 (二维树状数组)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1559 最大子矩阵 Time Limit: 30000/10000 MS (Java/Others) ...
- BIT 树状数组 详解 及 例题
(一)树状数组的概念 如果给定一个数组,要你求里面所有数的和,一般都会想到累加.但是当那个数组很大的时候,累加就显得太耗时了,时间复杂度为O(n),并且采用累加的方法还有一个局限,那就是,当修改掉数组 ...
- [Offer收割]编程练习赛13 解题报告
http://hihocoder.com/contest/offers13/problems 题目1 : 风格不统一如何写程序 首先:输入保证组成变量名的单词只包含小写字母. 做法:只要对不同的部分进 ...
- hiho #1502:最大子矩阵(元素和不超过k)
#1502 : 最大子矩阵 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个NxM的矩阵A和一个整数K,小Hi希望你能求出其中最大(元素数目最多)的子矩阵,并且该 ...
随机推荐
- PMP:5.项目范围管理
项目范围管理包括确保项目做且只做所需的全部工作,以成功完成项目的各个过程. 管理项目范围主要在于定义和控制哪些工作应该包括在项目内,哪些不应该包括在项目内. 核心概念: 规划范围管理:为记录如何定 ...
- 4.BeanPostProcessor 后处理Bean
Bean种类 普通bean:之前操作的都是普通bean.<bean id="" class="A"> ,spring直接创建A实例,并返回 Fac ...
- css3的动画效果
全新的css3加入的动画效果: [ animation-name ]:检索或设置对象所应用的动画名称 [ animation-duration ]: 检索或设置对象动画的持续时间 [ animatio ...
- extern的使用详解(多文件编程)——C语言
extern——关键字 extern是C语言中的一个关键字,一般用在变量名前或函数名前,作用是用来说明“此变量/函数是在别处定义的,要在此处引用”,extern这个关键字大部分读者应该是在变量的存储类 ...
- 为什么 echo 3 . print(2) . print(4) . 5 . 'c'的结果是45c2131
例子:请写出echo 3 . print(2) . print(4) . 5 . 'c'的输出结果为____? 许多人看到这个题的第一印象是输出结果不就是3245c嘛,然而正确的是答案却是45c213 ...
- java中的io系统详解
相关读书笔记.心得文章列表 Java 流在处理上分为字符流和字节流.字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符.字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字 ...
- C#6.0语言规范(二) 词法结构
程式 AC#程序由一个或多个源文件组成,正式称为编译单元(编译单元).源文件是Unicode字符的有序序列.源文件通常与文件系统中的文件一一对应,但不需要此对应关系.为了获得最大的可移植性,建议使用U ...
- 哥们,你真以为你会做这道JVM面试题?
有关Java虚拟机类加载机制相关的文章一搜一大把,笔者这里也不必再赘述一遍了. 笔者这里捞出一道code题要各位大佬来把玩把玩,如果你一眼就看出了端倪,那么恭喜你,你可以下山了: public cla ...
- Python加密与解密
前言 据记载,公元前400年,古希腊人发明了置换密码.1881年世界上的第一个电话 保密专利出现.在第二次世界大战期间,德国军方启用“恩尼格玛”密码机, 密码学在战争中起着非常重要的作用. 随着信息化 ...
- 关于小窗滑动,父级body也跟随滑动的解决方案(2)
当第一次写这个问题的时候,并不知道竟然还会写2,而且(1)也并没有解决问题. 也发现,这个问题,真实也困住了很多人,找到了张鑫旭(http://www.zhangxinxu.com/wordpress ...