TAG 动态规划
设maxd[n]为前n个数的最大子序列和
maxd[n]=max{ maxd[n-1], sum[n]-minX } 其中,minX=min{sum[i] | 1<=i<n}
同理,设rmaxd[n]为从n到序列完的最大子序列和
则答案为max{ maxd[i]+rmaxd[i+1] },时间复杂度为O(n)
ans=sum[0]+rsum[1];
for (int i=1; i<n-1; ++i )
{
ans=max( maxd[i]+rmaxd[i+1], ans);
}
printf("%d/n",ans );
}
return 0;
}