一直很少練dp~這幾天再學學~~
在本題中:a[i][j]的值表示左上角為(1,1)右下角為(i,j)的矩陣的所有元素之和~
給你乙個m×n的整數矩陣,在上面找乙個x×y的子矩陣,使子矩陣中所有元素的和最大。
input
輸入資料的第一行為乙個正整數t,表示有t組測試資料。每一組測試資料的第一行為四個正整數m,n,x,y(0
output
對於每組資料,輸出乙個整數,表示子矩陣的最大和。
sample input
14 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
2474
#include #include #include #include #include const int maxn=1010;
using namespace std;
int a[maxn][maxn];
int main()
for(int i=1;i<=n;i++) //將列疊加,都疊加完之後,a[i][j]就表示左上角為(1,1)右下角為(i,j)的矩陣;
for(int j=1;j<=m;j++)
//下面開始遞推;
int max=a[x][y];
for(int i=x;i<=n;i++)
for(int j=y;j<=m;j++)
else if(i!=x&&j==y)
else if(i!=x&&j!=y)
}cout<
hdu1559(最大子矩陣)
problem description 給你乙個m n的整數矩陣,在上面找乙個x y的子矩陣,使子矩陣中所有元素的和最大。input 輸入資料的第一行為乙個正整數t,表示有t組測試資料。每一組測試資料的第一行為四個正整數m,n,x,y 0 output 對於每組資料,輸出乙個整數,表示子矩陣的最大和...
hdu1559 最大子矩陣
problem description 給你乙個m n的整數矩陣,在上面找乙個x y的子矩陣,使子矩陣中所有元素的和最大。input 輸入資料的第一行為乙個正整數t,表示有t組測試資料。每一組測試資料的第一行為四個正整數m,n,x,y 0 m,n 1000 and 0 x m and 0 y n 表...
HDU 1559 最大子矩陣
給你乙個m n的整數矩陣,在上面找乙個x y的子矩陣,使子矩陣中所有元素的和最大。輸入資料的第一行為乙個正整數t,表示有t組測試資料。每一組測試資料的第一行為四個正整數m,n,x,y 0 對於每組資料,輸出乙個整數,表示子矩陣的最大和。1 4 5 2 2 3 361 649 676 588 992 ...