簡單到不想說……dp[i]表示以i為結尾的最大連續和的值。
那麼答案肯定就是最大值了。求一次max就可以了。
仔細想想連線性的空間都不需要了。
#includeusingnamespace
std;
#define ll long long
intn;
int a[200005
];int dp[200005
];int
main()
dp[0]=a[0
];
for(int i=1;i)
int ans=*max_element(dp,dp+n);
printf(
"%d\n
",ans);
}
洛谷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。輸...
洛谷P1115 最大子段和
給出一段序列,選出其中連續且非空的一段使得這段和最大。輸入格式 輸入檔案maxsum1.in的第一行是乙個正整數n,表示了序列的長度。第2行包含n個絕對值不大於10000的整數a i 描述了這段序列。輸出格式 輸入檔案maxsum1.out僅包括1個整數,為最大的子段和是多少。子段的最小長度為1。輸...