传送门
线段树好题啊。
题目要求的是sum−a−b−c+maxsum-a-b-c+maxsum−a−b−c+max{∣a+v∣+∣b+v∣+∣c+v∣|a+v|+|b+v|+|c+v|∣a+v∣+∣b+v∣+∣c+v∣}.
那么后面有几种情况:
- a+v+b+v+c+va+v+b+v+c+va+v+b+v+c+v
- a+v−b−v+c+va+v-b-v+c+va+v−b−v+c+v
- a+v+b+v−c−va+v+b+v-c-va+v+b+v−c−v
- −a−v+b+v+c+v-a-v+b+v+c+v−a−v+b+v+c+v
- a+v−b−v−c−va+v-b-v-c-va+v−b−v−c−v
- −a−v+b+v−c−v-a-v+b+v-c-v−a−v+b+v−c−v
- −a−v−b−v+c+v-a-v-b-v+c+v−a−v−b−v+c+v
- −a−v−b−v−c−v-a-v-b-v-c-v−a−v−b−v−c−v
<=>
- a+b+c+3va+b+c+3va+b+c+3v
- a−b+c+va-b+c+va−b+c+v
- a+b−c+va+b-c+va+b−c+v
- −a+b+c+v-a+b+c+v−a+b+c+v
- a−b−c−va-b-c-va−b−c−v
- −a+b−c−v-a+b-c-v−a+b−c−v
- −a−b+c−v-a-b+c-v−a−b+c−v
- −a−b−c−3v-a-b-c-3v−a−b−c−3v
那么对于vvv之前的数维护全局最大值就行了。
一共也就8种值,分类讨论就行了
代码