P14152 千手百眼,天下人间

题目背景

![](https://cdn.luogu.com.cn/upload/image_hosting/471fnabm.png) 影小姐在创作小说《转生成为八重宫司,然后天下无敌》。 但是由于神子不定时会过来贴贴,所以她不得不在神子来到时对所写的文稿进行掩饰甚至撤销,所以导致整个写作过程乱七八糟。 现在她很生气,请你在她生气的拔刀斩了你之前回答她的所有问题。

题目描述

我们将提瓦特文抽象成正整数数字。 初始时影有序列 $A$ 作为草稿,长度为 $n$。 但是写着写着,她心情总是飘忽不定的变化,所以草稿也会随之变化。 有以下三种可能的事件: 1. 在第 $t_i$ 时刻,将 $l_i$ 到 $r_i$ 的所有值增加 $k_i$。 2. 在第 $t_i$ 时刻,查询区间 $l_i$ 到 $r_i$ 之间所有数的最大值。 3. 在第 $t_i$ 时刻,将 $l_i$ 到 $r_i$ 这些**时间点**发生的三种事件全部撤销。 在影写完冷静下来之后,请你对于所有未被撤销的查询进行回答。

输入格式

第一行输入两个正整数 $n,m$。 第二行输入 $n$ 个整数,表示序列 $A$。 接下来 $m$ 行,每行输入第一个元素 $opt$ 作为操作类型。 - 若 $opt=1$,则按顺序输入 $t_i,l_i,r_i,k_i$,表示一次修改,满足 $-10^9\le k_i\le10^9$。 - 若 $opt=2$,则按顺序输入 $t_i,l_i,r_i$,表示一次查询。 - 若 $opt=3$,则按顺序输入 $t_i,l_i,r_i$,表示一次撤销,满足 $l_i\le r_i

输出格式

第一行输出一个整数 $cnt$,表示有效的查询次数。 接下来 $cnt$ 行,每行一个整数作为答案。 注意:你所输出的答案应按照时间顺序,若两个查询时间相同,则优先回答操作编号较小的那次查询,同理,两个操作时间相同时优先执行编号小的操作。

说明/提示

对于前 $10\%$ 的数据,满足 $n,m\le10$。 对于另 $20\%$ 的数据,满足不含有撤销操作。 对于另 $10\%$ 的数据,满足没有修改操作。 对于 $100\%$ 的数据,满足 $1\le n,m\le5\times10^5,-10^9\le A_i\le10^9,1\le t_i \le 10^{18}$。