洛谷P1115最大子段和

2021-07-05 23:18:20 字數 784 閱讀 9879

洛谷1115 最大子段和

題目描述

給出一段序列,選出其中連續且非空的一段使得這段和最大。

輸入輸出格式

輸入格式:

輸入檔案maxsum1.in的第一行是乙個正整數n,表示了序列的長度。

第2行包含n個絕對值不大於10000的整數a[i],描述了這段序列。

輸出格式:

輸入檔案maxsum1.out僅包括1個正整數,為最大的子段和是多少。

輸入輸出樣例

輸入樣例#1:

7 2 -4 3 -1 2 -4 3

輸出樣例#1:

4說明

【樣例說明】2 -4 3 -1 2 -4 3

【資料規模與約定】

對於40%的資料,有n ≤ 2000。

對於100%的資料,有n ≤ 200000。

一看,這不是簡單地遞推嘛!

從頭線性掃一遍找最優即可

但2次80分之後我仔細分析了一下, 如果全是負數,就會出現輸出0的錯誤(當成不選)。

於是加上特判就ac了

#include

using

namespace

std;

const

int n=200005;

int a[n];

int main()

if(pd==false)//特判,全是負數的情況

for(i=1;i<=n;i++)//正常情況

cout

0;}

洛谷 P1115 最大子段和

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

洛谷P1115 最大子段和

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

洛谷P1115最大子段和

洛谷p1115 本題是想求出給定序列的最大子串行和,根據題意,可以從第乙個數開始遍歷,每次將此數a i 與此數與之前保留的和的和 a i b i 1 比較取較大值,再將b i 與所儲存最大值ans比較,從而求解。開始做題時因為此題是在字首和的題單中,所以一直把想法侷限在利用字首和求解,利用字首和固然...