9999023 - 书架

小 P 有一个神奇的书架,书架上有 n 本书,第 i 本书的颜色一开始为 ci,一 共有 K 种不同的颜色,接下来小 P 会执行以下的 m 个操作,每个操作为以下两 种中的一种:

  1. 修改操作:给出 l, r, a, b,对于所有的 i ∈ [l, r],将所有的 ci 修改为 (a × ci + b) mod K。
  2. 询问操作,给出 l, r,询问区间 [l, r] 中一共出现了多少种不同的颜色。

输入

文件 book.in 中读入数据。 第一行三个整数 n, m, k。 第二行共 n 个整数,第 i 个整数为 ci。 接下来一共 m 行,每一行第一个整数为 op。 若 op = 1,那么接下来紧跟四个整数 l, r, a, b,表示这是一次修改操作。 若 op = 2,那么接下来紧跟两个整数 l, r,表示这是一次询问操作。

输出

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

样例

输入

10 7 5
2 2 2 3 4 4 2 0 1 0
1 4 8 2 3
1 1 9 4 2
2 7 
2 2 7
1 6 7 0 3
1 1 4 0 1
2 5 6

输出

2
3
2

输入

13 9 6
1 5 1 0 2 2 4 3 3 0 0 4 4
2 2 4
1 2 4 0 5
1 8 13 2 4
2 1 4
1 3 5 1 1
1 3 6 2 3
1 7 11 0 4
2 1 13
2 5 10

输出

3
2
5
3
时间限制 2 秒
内存限制 512 MB
讨论 统计
上一题 下一题