D. 彩符「彩光乱舞」 (data)

    传统题 1000ms 256MiB

彩符「彩光乱舞」 (data)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定一个长度为 nn 的数组 {an}\{a_n\},再给定一个长度为 mm 的指令集 tmt_m。

对于任意一个指令 tit_i 有两个参数 li,ril_i,r_i,表示将区间 [li,ri][l_i,r_i] 中的所有数修改为这个区间的最大值。

有 qq 次操作,操作为处理指令集中的指令或者对原数组进行修改,具体的操作有以下两种:

  • 给定 L,R,kL, R, k,求假设进行 tL,tL+1,…,tRt_L, t_{L+1},\dots,t_{R} 这一段的指令之后,aka_k 应该是多少。
  • 将 aua_u 的值修改为 vv。

输入格式

在文件 data.in 中读入。

第一行三个整数 n,m,qn,m,q,表示数组长度,指令集长度和询问数。

第二行 nn 个整数 aia_i。

接下来 mm 行,每行两个整数 li,ril_i,r_i 表示一个指令 tit_i。

接下来 qq 行,每行表示一次询问,格式如下:

  • 1 u v,则我们将 aua_u 改成 vv;
  • 2 L R k,请输出假设进行 tL,tL+1,…,tRt_L, t_{L+1},\dots,t_{R} 这一段的指令之后 aka_k 的值。

输出格式

在文件 data.out 中输出。

对于每个操作 22 输出一行一个整数表示答案。

样例

样例输入 #1

5 3 6
5 3 1 4 2
2 3
3 4
1 5
2 1 2 3
1 4 5
2 1 2 3
1 4 4
1 1 4
2 1 3 1

样例输出 #1

4
5
4

数据范围

对于 30%30\% 的数据,满足 n,m,q≤100n,m,q \le 100。

对于另外 30%30\% 的数据,满足 L=1L = 1。

对于另外 30%30\% 的数据,满足没有操作 11。

对于 100%100\% 的数据,满足 n,m,q≤105n,m,q \le 10^5,1≤ai,v≤1051\le a_i,v \le 10^5。