洛谷 1115 最大子段和

2022-07-23 17:33:28 字數 548 閱讀 6700

【題解】

經典的最大子段和問題。如果當前sum大於等於0,就累加上當前的數;當前的sum小於0,就把sum變為0,即之前的那些都不取,因為它們對答案的貢獻是負的。掃一遍即可。

1 #include2 #include3 #include4

#define ll long long

5#define rg register

6#define n 200010

7using

namespace

std;

8int

n;9 ll sum,ans=-2e9;

10 inline int

read()

16int

main()

23 printf("

%lld\n

",ans);

24return0;

25 }

view code

洛谷1115 最大子段和

最大子段和 問題描述 給出一段序列,選出其中連續且非空的一段使得這段和最大。分析 從第乙個一直往後加,記錄最大值,加到和為負數時從0開始繼續加。注意會有全是負數的情況最後判斷即可。時間複雜度 o n const maxn 200000 vara array 0.maxn of longint n,a...

洛谷P1115最大子段和

洛谷1115 最大子段和 題目描述 給出一段序列,選出其中連續且非空的一段使得這段和最大。輸入輸出格式 輸入格式 輸入檔案maxsum1.in的第一行是乙個正整數n,表示了序列的長度。第2行包含n個絕對值不大於10000的整數a i 描述了這段序列。輸出格式 輸入檔案maxsum1.out僅包括1個...

洛谷 P1115 最大子段和

給出一段序列,選出其中連續且非空的一段使得這段和最大。輸入格式 輸入檔案maxsum1.in的第一行是乙個正整數n,表示了序列的長度。第2行包含n個絕對值不大於10000的整數a i 描述了這段序列。輸出格式 輸入檔案maxsum1.out僅包括1個整數,為最大的子段和是多少。子段的最小長度為1。輸...