logo AlgoBeat OnlineJudge
登录 注册

#104303. [BZOJ 4303] 数列

内存限制:128 MiB 时间限制:20000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

个元素,第 个元素可以用三元组 表示。

初始有 ,而 由输入给定,保证 是一个 的排列。

你需要维护数列,以支持以下四种操作:

  • 0 l r a b
  • 1 l r a b
  • 2 l r:询问 的值;
  • 3 l r:询问 的值。

输入格式

第一行两个整数 表示元素个数和操作次数。

第二行 个整数

接下来 行,每行一个操作,格式见题目描述。

输出格式

对于每次询问,输出一行一个整数表示答案。

由于答案可能很大,请输出它对 取模后的结果,注意这不是一个质数。

样例

样例输入 #1

4 4 
2 1 4 3 
0 2 3 4 5 
1 1 3 4 7 
2 1 1 
3 1 1 

样例输出 #1

7 
27 

数据范围与提示

对于 的数据, 均在 范围内。