经过和同学们的讨论,最后思路大概是这样的,首先考虑的最长非递减子序列其实是abab或者bab,而abab其实包含了bab,所以在后面处理,我们将bab转换为0a+bab。记录每段的长度,假如b开头,那么在记录长度的序列前+0,然后以长度为4的窗划过长度序列求和,最大的求的数了。步进为2,是以ab为一个模块前进的。为了移动方便,如果长度序列为奇数,要在末尾+0,大概是这样,有不对的或者不理解的可以讨论。谢谢大家的帮忙!
点赞 4

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务