CF1109C Sasha and a Patient Friend
题目描述
费迪亚和萨沙是朋友,所以萨沙项知道关于费迪亚的一切。
费迪亚把他的耐心放在一个无限大的碗里。(真实么)
但是,与碗不同,费迪亚的耐心不是无限的,费迪亚总共有$v$升的耐心,一旦$v$等于$0$,碗将立即破裂。
碗里有一个水龙头,可以每秒增加$s$升的耐心。请注意,$s$可能是负数,在这种情况下,水龙头会吸入耐心(……)
萨沙可以做不同的事情,所以他可以改变水龙头的速度。萨沙所做的所有动作都可以表示为$q$次操作。有三种类型的操作:
```1 t s```-添加一个新速度,意味着从第$t$秒开始,水龙头的速度将等于$s$。
```2 t```-删除第$t$秒发生的操作。保证此类操作的存在。
```3 l r v```-萨沙想知道:如果按照所有$l \le t\le r$的操作来执行,那么碗何时会破裂。如果碗在规定时间内没发生破裂,那么答案将是$-1$.
由于萨沙不想检查费迪亚的耐心结束后会发生什么,所以他请求你帮助他,并回答每一个第$3$类问题。
保证在任何时刻,不会有两个事件同时发生。
输入格式
第一行包含一个整数$q$($1\le q\le 10^5
$),表示查询的数量。
接下来的每一行$q$都有以下格式之一:
```1 t s```$(1\le t\le 10^9,-10^9\le s\le 10^9)$,含义如题。
```2 t```$(1\le t\le 10^9)$,含义如题。
```3 l r v```$(1\le l\le r\le 10^9,0\le v\le 10^9$),含义如题。
保证所有查询中的$t$、$s$、$l$、$r$、$v$都是整数。
另外,保证至少有一个$3$类型的查询。
输出格式
对于第$3$种类型的每个查询,输出一个整数,表示结果。
如果绝对或相对误差不超过$10^{-6}$,您的答案将被视为正确。
也就是说,你的答案是$a$,测试点的答案是$b$。当且仅当$\frac{∣a−b∣}{max(1,∣b∣)} \le 10 ^{−6}$ 时你才会拿到该测试点的分。
### 样例解释
在第一个样例中,$3$类型的所有查询都包含所有事件,其模拟如下:

Translated by 桂梓清
2022.1.4
说明/提示
In the first example all the queries of the $ 3 $ -rd type cover all the events, it's simulation is following:
