小X学数据结构

题目来源

原创 / 参考OJ(补个原题链接:link:

题目描述

小X是个聪明的孩子。
线段树对他来说太简单了。
这天他看到这么一道题目。
维护一个序列,有 5 种操作。
1 区间加。
2 区间乘。
3 区间求和。
4 区间平方和。
5 区间立方和。
这对于他肯定不在话下,但是小X想考考你。

输入格式

第一行两个数 n,m 表示序列长度和询问个数( n,m\le5\times10^5 )。
第二行 n 个数,表示初始序列。
接下来 m 行时 m 个操作。
前两个操作是 op,l,r,k
后三个是 op,l,r

输出格式

对于 3,4,5 操作,输出一个答案。

样例

Input 1

3 2
1 2 3
1 2 3 4
3 1 3

Output 1

14