4579: 线段树练习 3
[Creator : ]
Description
给你 $N\ (1 \leq N \leq 200,000)$ 个数,有两种操作:
1:给区间 $[a,\ b]$ 的所有数增加 $X$;
2:询问区间 $[a,\ b]$ 的数的和。
1:给区间 $[a,\ b]$ 的所有数增加 $X$;
2:询问区间 $[a,\ b]$ 的数的和。
Input
第一行一个正整数 N。
接下来 $N$ 行 $N$ 个整数,
再接下来一个正整数 $Q\ (1 \leq Q \leq 200,000)$,每行表示一个操作。
如果第一个数是 $1$,后接 $3$ 个正整数,表示在区间 $[a,\ b]$ 内每个数增加 $X$;如果是 $2$,后接 $2$ 个正整数,表示询问区间 $[a,\ b]$ 的和是多少。
接下来 $N$ 行 $N$ 个整数,
再接下来一个正整数 $Q\ (1 \leq Q \leq 200,000)$,每行表示一个操作。
如果第一个数是 $1$,后接 $3$ 个正整数,表示在区间 $[a,\ b]$ 内每个数增加 $X$;如果是 $2$,后接 $2$ 个正整数,表示询问区间 $[a,\ b]$ 的和是多少。
Output
对于每个询问输出一行一个答案。
Sample 1 Input
3
1
2
3
2
1 2 3 2
2 3
Sample 1 Output
9