P10639 BZOJ4695 最假女选手
题目描述
给定一个长度为 $n$ 的序列,要求支持以下 $6$ 种操作:
- 给一个区间 $[l,r]$ 加上一个整数 $x$;
- 把一个区间 $[l,r]$ 内小于 $x$ 的数都变成 $x$;
- 把一个区间 $[l,r]$ 内大于 $x$ 的数都变成 $x$;
- 求区间 $[l,r]$ 的和;
- 求区间 $[l,r]$ 的最大值;
- 求区间 $[l,r]$ 的最小值;
输入格式
第一行一个整数 $n$ 表示序列长度。
第二行 $n$ 个整数 $a_i$ 表示初始序列。
第三行一个整数 $m$ 表示操作个数。
接下来 $m$ 行,每行三或四个整数,表示一个题目中所描述的操作。
输出格式
对于每个 $4,5,6$ 类型的操作输出一行一个整数表示答案。
说明/提示
数据保证,$1\leq n,m\leq 5\times 10^5$,$|a_i|\leq 10^8$。
当进行 $1$ 操作时,$|x| \leq 1000$;
当进行 $2$ 操作时,$|x| \leq 10^8$。