什么叫连续求和非负效应,假如有k个数x1,x2...xk,有如下约束存在:
x1>=0
x1+x2>=0
...
x1+x2+...+xk>=0
这样的一组有序组(x1,x2...xk)我们就称之为具有连续求和非负效应。
这种连续求和非负效应有一个对偶的性质——逆连续求和非正效应。这是怎么来的呢?
假设我们有一个数x*,当把这个数加入以上有序组以后,我们发现有如下约束成立:
x1+x2+...+xk+x*<=0
结合以上的约束,很明显有:
x*<=0
xk+x*<=0
x(k-1)+xk+x*<=0
...
x2+x3+...+xk+x*<=0
x1+x2+...+xk+x*<=0
这种效应就叫做逆连续求和非正效应。
进一步的分析会发现,从第i位开始,有
xi+x(i+1)+...+xk+x*<=0
同时我们知道
x1+x2+...+x(i-1)>=0
x1+x2+...+xk+x*<=0
所以,得出:
[x1+x2+...+x(i-1)]+[x(i)+x(i+1)+...+x*]>=[x(i)+x(i+1)+...+x*]
xi+x(i+1)+...+xk+x*<=x1+x2+...+xk+x*<=0
因此x1+x2+...+xk+x*为逆连续求和上届。
备注:这种效应可以用来求解Leetcode 中的Max Subarray问题,以及Gas Station问题。 但是其应用因该不止于此,有待后续研究。