最大子段和。
求一段連續的子段裡面最大的值。
1 #include2const
int maxn=10006;3
inta[maxn];45
intmain()614
15for(int i=1;i<=n;i++)
20 printf("
%d\n
",ans);21}
22return0;
23 }
最大子矩陣和
求最大子矩陣的和,建立在最大子段和之上。
關鍵的思維轉換:將子矩陣的上下行相加,加為一行,問題轉化為求最大子段和。
1 #include2 #include3 #include4using
namespace
std;
5const
int maxn=406;6
inta[maxn][maxn],b[maxn];
7int
x,y;89
int maxline(int
en)10
17return
res;18}
1920
int maxsum(int m,int
n)2131}
32return
ans;33}
3435
intmain()
3647
return0;
48 }
最大子段和 最大子矩陣和
給出n個整數序列 可能為負數 組成的序列a1,a2,an,求該序列形如 的子段和的最大值。當所有整數均為負數時,定義最大子段和為0。多測試用例。每個測試用例佔2行 第一行是序列的個數n 0 n 10000 第二行是n個整數。為每個測試用例輸出一行結果 最大子段和。6 2 11 4 13 5 2 31...
最大子段和
設a 是n個整數的序列,稱為該序列的子串行,其中1 i j n.子串行的元素之和稱為a的子段和.例如,a 2,11,4,13,5,2 那麼它的子段和是 長度為1的子段和 2,11,4,13,5,2 長度為2的子段和 9,7,9,8,7 長度為3的子段和 5,20,4,6 長度為4的子段和 18,15...
最大子段和
問題表述 n個數 可能是負數 組成的序列a1,a2,an.求該序列 例如 序列 2,11,4,13,5,2 最大子段和 11 4 13 20。1 窮舉演算法 o n3 o n2 2 分治法 將序列a 1 n 從n 2處截成兩段 a 1 n 2 a n 2 1 n 例項 三 最大子段和 問題表述 n個...