和最大子串行

2021-09-25 15:48:18 字數 989 閱讀 9543

前幾天看到這個題,做了一下,提交完後去看了一下其他人寫的題解覺得挺有意思的,就把這個寫出來了。

}動態規劃就是將待求解的問題分解成若干個子問題,先求解子問題,然後通過子問題的解得出原問題的解

**實現:

#include "bits/stdc++.h"    

using namespace std;

int n, dp[100010], a[100010], res = 0x7fffffff + 1; //因為有負數,所以用int32位最小值來比較(0x7fffffff 是32位整形最大值,+1就是32位整形最小值)

int main()

//答案就是res

cout << res << endl;

return 0;

}

#includeusing namespace std;

const int maxsize=100001;

int n;

int maxsum(int a,int left,int right)

s2=0,rs=0;

for(int j=m+1;j<=r;j++)

midsum=s1+s2;

if(midsum>lsum)

sum=midsum;

else

sum=lsum;

if(sum>n;

for(int i=0;i>a[i];

cout<

return 0;}

和最大子串行

問題描述 第一行輸入乙個正整數n 1 n 100001 第二行輸入n個整數a 0 a 10000 求該組整數子串行最大的和。解決這個問題應該考慮輸入n較大的情況,也就是說,輸入100000個數字判斷它的和最大子串行應當也能很快地算出來。我看過很多求解的 有三重for迴圈的,有兩重for迴圈的,也有使...

最大子串行和

最大子串行是要找出由數組成的一維陣列中和最大的連續子串行。比如的最大子串行就是 它的和是8,達到最大 而 的最大子串行是,它的和是6。找最大子串行的方法很簡單,只要前i項的和還沒有小於0那麼子串行就一直向後擴充套件,否則丟棄之前的子串行開始新的子串行,同時我們要記下各個子串行的和,最後找到和最大的子...

和最大子串行

時間限制 1 sec 記憶體限制 512 mb 提交 3 解決 3 提交 狀態 討論版 對於乙個給定的長度為n的整數序列a,它的 子串行 的定義是 a中非空的一段連續的元素 整數 你要完成的任務是,在所有可能的子串行中,找到乙個子串行,該子串行中所有元素的和是最大的 跟其他所有子串行相比 程式要求你...