不会只有我f题写这么麻烦吧
线段树同时维护区间的:区间和/前缀最大值/后缀最大值/前缀最小值/后缀最小值/子数组和的绝对值最大值
pushup的时候就是:
- 子数组和的绝对值最大值=max({左边绝对值最大值,右边绝对值最大值,abs(左边后缀最大值加右边前缀最大值),abs(左边后缀最小值加右边前缀最小值)})
- 区间和=左边区间和+右边区间和
- 前缀最大值=max(左边前缀最大值,左边区间和+右边前缀最大值)
- 另外三个同上
线段树同时维护区间的:区间和/前缀最大值/后缀最大值/前缀最小值/后缀最小值/子数组和的绝对值最大值
pushup的时候就是:
相关推荐