蓝桥试题 算法提高 最大连续子段和

简单dp

思路很清晰,注意事项及实现代码:

 1 #pragma GCC optimize(2)
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 int a[100010];
 5 int dp[100010];
 6 int ans=INT_MIN;
 7 int n;
 8 int main()
 9 {
10     ios::sync_with_stdio(false);
11     cin>>n;
12     for(register int i=1;i<=n;i++)
13     {
14         cin>>a[i];
15         dp[i]=a[i];;
16     }
17     for(register int i=1;i<=n;i++)
18     {
19         dp[i]=max(dp[i],dp[i-1]+a[i]);
20         ans=max(ans,dp[i]);
21     }
22     cout<<ans<<endl;
23     return 0;
24 }

 

posted @ 2022-03-09 20:22  江上舟摇  阅读(49)  评论(0编辑  收藏  举报