題意就是給你乙個矩陣,找出乙個子矩陣,這個子矩陣中所有的數的和是所有可能得到的子矩陣中的最大值,輸出這個值。
思路就是和最大連續子串行一樣,只不過用行壓縮,把幾行加和看成一行,變成最大子串行。具體方法是用乙個二維陣列a[i][j],表示這是第j列前i行的和得到所有資料和,然後開始遍歷,用3個for迴圈,一行一行的找(這裡的一行表示的是前幾行的和),然後一列一列的加,最終就能得到最大和。結合**看。
ac**:
#include#include#define maxn 105
intmain()
}intsum;
int m=0
;
for(int i=1; i<=n; i++)}}
printf(
"%d\n
",m);
}return0;
}
HDU 1559 最大子矩陣 最大子陣和
problem description 給你乙個m n的整數矩陣,在上面找乙個x y的子矩陣,使子矩陣中所有元素的和最大。input 輸入資料的第一行為乙個正整數t,表示有t組測試資料。每一組測試資料的第一行為四個正整數m,n,x,y 0 output 對於每組資料,輸出乙個整數,表示子矩陣的最大和...
最大子段和 最大子矩陣和
給出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 擁有最大和的子矩陣為 ...