DP 洛谷P1115最大子段和

2022-02-27 09:24:06 字數 1494 閱讀 6796

題目**

題目描述

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

輸入輸出格式

輸入格式:

第一行是乙個正整數nn

,表示了序列的長度。

第二行包含nn

個絕對值不大於

1000010000

的整數a_iai

​,描述了這段序列。

輸出格式:

乙個整數,為最大的子段和是多少。子段的最小長度為11。

輸入輸出樣例

輸入樣例

#1:

72 -4 3 -1 2 -4 3

輸出樣例

#1:

4說明

【樣例說明】

2,-4,3,-1,2,-4,32,−4,3,−1,2,−4,3

中,最大的子段和為

4,該子段為

3,-1,23,−1,2

.【資料規模與約定】

對於40\%40%

的資料,有

n ≤ 2000

n≤2000。對於

100\%100%

的資料,有

n ≤ 200000

n≤200000

題解

一般我們在做dp動態規劃類問題的思路肯定是:

1、設計狀態    把當前的局面表達    

2、設計狀態轉移方程      我從**來/要到那裡去

對於這題呢就是:

設計狀態     dp[i]=以a[i]結尾的最大子段和

2、設計狀態轉移方程      dp[i]=max(dp[i-1]+a[i],a[i])

**實現:

//最大子段和

//dp[i]

為[1,i]

位的最大子段和

#include

#include

usingnamespacestd;  

intmax(inta,intb)   

intdp[200010],a[200010],ans=-1e9;   

intmain()elsedp[0]=a[0];  

}}elsescanf("%d",&ans);  

printf("%d",ans);  

return0;  

}  

洛谷P1115 最大子段和 dp

給出一段序列,選出其中連續且非空的一段使得這段和最大。輸入格式 第一行是乙個正整數nn,表示了序列的長度。第二行包含nn個絕對值不大於1000010000的整數a iai 描述了這段序列。輸出格式 乙個整數,為最大的子段和是多少。子段的最小長度為11。輸入樣例 1 複製 7 2 4 3 1 2 4 ...

洛谷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。輸...