AT_yahoo_procon2017_qual_d 工場
题目描述
有两个变量 $x$ 和 $y$,它们在开始时都为 $0$。每秒钟 $x$ 的值都会增加 $k$。现在要对它们执行 $q$ 次询问和操作。
- 操作:格式为 `1 d a`。在第 $d$ 秒后($x$ 已经加完 $k$)选择一个满足 $0\le b\le a$ 且 $b$ 小于等于当前 $x$ 的值的整数 $b$,将 $x$ 减去 $b$,将 $y$ 加上 $b$。
- 询问:格式为 `2 d`。在考虑已给出的操作的情况下,求第 $d$ 秒后 $y$ 的最大值。
数据保证,$1 \le q \le 10^5$,$1 \le k,a,d\le 10^9$。输入均为整数。
输入格式
第一行输入 $q$ 和 $k$,接下来 $q$ 行每行一个询问或操作,格式如题。
输出格式
按顺序回答每个询问。
说明/提示
### 制約
- $ 1\ ≦\ Q\ ≦\ 10^5 $
- $ 1\ ≦\ K\ ≦\ 10^9 $
- $ 1\ ≦\ D_i≦\ 10^9 $
- $ 1\ ≦\ A_i≦\ 10^9 $
### 部分点
- $ 600 $ 点分のテストケースでは、経理質問における $ D_i $ の値が常に $ 10^9 $ である。
### Sample Explanation 1
例えば、最後の経理質問のときの最適な商品の売り方は以下のようになります。 - 休暇明け $ 1 $ 日目に商品を $ 2 $ 個生産して、その後商品を $ 1 $ 個売る。このとき、商品は $ 1 $ 個残る。 - 休暇明け $ 2 $ 日目に商品を $ 2 $ 個生産する。このとき、商品は $ 3 $ 個残る。 - 休暇明け $ 3 $ 日目に商品を $ 2 $ 個生産して、その後商品を $ 5 $ 個売る。
### Sample Explanation 2
この入力は部分点の制約を満たします。