在比较数列子段和的平均数大小时,可以把每一个数都减去一个值(常用二分),则可以转化为 判定是否存在一个子段,该子段的和非负(前缀和)
for ( int i=1; i<=n; i++ ) { s[i] = s[i-1] + (a[i] - average); }