#渣渣的自我救赎#
最大连续子序列和(dp经典问题最长上升子序列、最长公共子序列)
这个题目就是一串数字,找出最大连续子序列和。
dp的三个特性最优子结构性质、子问题重叠性质、无后效性
状态转移方程dp[i]=max(dp[i-1]+num[i],num[i])
#include<iostream>
using namespace std;
int num[1005];
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&num[i]);
long long maxsum=num[0];
for(i=1;i<n;i++)
{
if(num[i-1]>=0)
num[i]=num[i-1]+num[i];
if(maxsum<num[i])
maxsum=num[i];
}
printf("%d\n",maxsum);
}
return 0;
}