#P5511. 决战

决战

题目背景

Steve 成功突破了水晶防御,即将和黑暗势力进行决战。

题目描述

然而黑暗势力具有改变地形的能力,给军队的前进造成了很大困难

为了使军队更快前进,Steve 将核武器带到了前线,用来破坏地形

另外,Steve 很关心当前的地形情况

具体地说,前线的地形可分为 nn 段,初始高度为 00,决战时会发生 mm 个事件,事件可以是:

  1. Steve 询问区间 [l,r][l,r] 内,有几段小于给定的高度 hh
  2. Steve 使用核武器,使得区间 [l,r][l,r] 内高度大于 hh 的段的高度减少到 hh
  3. 黑暗势力改变地形,使得区间 [l,r][l,r] 内高度小于 hh 的段的高度增加到 hh

由于战事非常紧迫,所以部分测试点强制在线。

对于 k=1k=1 的测试点,设上次事件 1 的答案为 lastanslastans,你需要将 l,r,hl,r,h 分别与 lastanslastans 取异或后得到实际数值,如果还没有回答过事件 1,那么 lastans=0lastans=0

输入格式

第一行 33 个整数 n,m,kn,m,k

接下来 mm 行,每行 44 个整数,描述一个事件。

第一个整数 optopt 表示事件种类,接下来 33 个整数 l,r,hl,r,h,含义如题所述。

数据中存在 l>rl>r 的情况,此时请直接忽略这次操作。

输出格式

对于每个事件 1,输出一行一个整数,表示询问的答案。

10 8 0
1 1 5 1
3 1 3 5
1 1 5 3
2 2 3 3
1 1 5 3
1 1 5 5
3 3 4 2
1 1 5 3

5
2
2
4
2

提示

样例解释:

[00000]00000=>5[TTTTT]
[000]0000000
[55500]00000=>2[FFFTT]
5[55]0000000
[53300]00000=>2[FFFTT]
[53300]00000=>4[FTTTT]
53[30]000000
[53320]00000=>2[FFFTT]

数据范围:

对于所有数据,保证 1lrn,0h1091\le l \le r \le n,0\le h \le 10^9

Subtask1 是比赛时的数据。

测试点 分值 n m 特殊性质
1 4 1000
2 14 100000 h1h\le 1
3 11
4 10 10910^9 1000
5 12 100000 k=1,h1k=1,h\le 1
6 14 *
7 16
8 19 k=1k=1

对于第 66 个测试点,保证所有事件 11 都在事件 2233 之后。

Subtask2 为不计分的 Hack 数据,现在仅包含一组数据,满足 #8 的性质。

不保证数据随机\color{white}\texttt{不保证数据随机}