題目:
求乙個m*n的矩陣的最大子矩陣和。
比如在如下這個矩陣中:
0 -2 -7 0
9 2 -6 2
-4 1 -4 1
-1 8 0 -2
擁有最大和的子矩陣為:
9 2-4 1
-1 8
其和為15。
思路:二維轉成一維,用一維的最大連續子串行求和即可。
#include #include #include /*從a中找到最大連續子串行的和*/
int getsubmaxsum(int *a, int n)
if (tmp < 0)
} return sum;
}/*row:行長度
col:列長度
演算法思想參考:
*/int getsubmaxarray(int arr[4], int row, int col)
{ int i;
int j;
int k;
int sum = 0;
int tmp = 0;
int rec[255];
for (k=0; k
最大子段和 最大子矩陣和
給出n個整數序列 可能為負數 組成的序列a1,a2,an,求該序列形如 的子段和的最大值。當所有整數均為負數時,定義最大子段和為0。多測試用例。每個測試用例佔2行 第一行是序列的個數n 0 n 10000 第二行是n個整數。為每個測試用例輸出一行結果 最大子段和。6 2 11 4 13 5 2 31...
最大子矩陣和
前言 今天花了很長時間,看了無數人寫的帖子,但是幾乎沒有人把這個問題一下子說得很清楚,所以,我把這個問題按照自己的思路寫出來,希望能夠把這個問題講清楚。問題 求乙個m n的矩陣的最大子矩陣和。比如在如下這個矩陣中 0 2 7 0 9 2 6 2 4 1 4 1 1 8 0 2 擁有最大和的子矩陣為 ...
最大子矩陣和
前言 今天花了很長時間,看了無數人寫的帖子,但是幾乎沒有人把這個問題一下子說得很清楚,所以,我把這個問題按照自己的思路寫出來,希望能夠把這個問題講清楚。問題 求乙個m n的矩陣的最大子矩陣和。比如在如下這個矩陣中 0 2 7 0 9 2 6 2 4 1 4 1 1 8 0 2 擁有最大和的子矩陣為 ...