「SFCOI-3」进行一个走的行

题目背景

**公告:注意存在 $l_i > r_i$ 的情况,此时操作无效。** ------------ 小 L 热衷于行走。

题目描述

小 L 来到了一处景点,他想要在这里的主干道上行走。 主干道上有若干关键点,他可以将其抽象为一个长为 $n$ 的序列 $a$,每个 $a_i$ 都是一个三元组,可以表示为 $(l_i, r_i, v_i)$,其具体含义形如: - 若 $r_i = -1$,表示一个需要买票进入的景点,票价为 $l_i$ 代币,游览完成后他会得到 $v_i$ 的愉悦值。 - 若 $r_i \neq -1$,表示一个礼品派发点,若他持有的代币面值之和 $x$ 满足 $l_i \leq x \leq r_i$,他可以领取一份礼品,并会得到 $v_i$ 的愉悦值。 他打算在这条主干道上行走 $m$ 次,每次他给出了行走起点 $l$ 和终点 $r$,一开始他持有的代币面值之和为 $x$,初始愉悦值为 $0$。 他将从 $l$ 开始向右依次经过 $i \in [l, r]$,他会做如下操作: - 若 $r_i = -1$,如果他持有的代币在支付完当前景点门票费用后还有剩余,他会游览这个景点。 - 若 $r_i \neq -1$,如果可以,他会领取一份礼品。 请你帮他快速求出每次行走结束后他的愉悦值。

输入输出格式

输入格式


第一行,两个整数 $n, m$; 接下来 $n$ 行,其中第 $i$ 行有三个整数 $l_i, r_i, v_i$; 接下来 $m$ 行,每行三个整数 $l, r, x$,表示一个询问。

输出格式


$m$ 行,每行一个整数,表示行走结束后他的愉悦值。

输入输出样例

输入样例 #1

4 10
1 1 4
5 -1 4
1 9 19
8 -1 10
1 1 11
2 2 4
3 3 5
4 4 14
1 2 1
2 3 9
3 4 1
1 3 9
2 4 8
1 4 10

输出样例 #1

0
0
19
10
4
23
19
23
23
23

说明

**本题开启捆绑测试。** - Subtask 1(10 pts):$1 \leq n, m \leq 5 \times 10^3$。 - Subtask 2(10 pts):$r_i \neq -1$。 - Subtask 3(20 pts):$r_i = -1$。 - Subtask 4(10 pts):$1 \leq n, m \leq 7.5 \times 10^4$,性质 A。 - Subtask 5(20 pts):$1 \leq n, m \leq 7.5 \times 10^4$。 - Subtask 6(10 pts):数据在范围内随机生成,性质 B。 - Subtask 7(20 pts):无特殊限制。 性质 A:$1 \leq l_i \leq 7.5 \times 10^4$,$r_i = -1$ 或 $1 \leq r_i \leq 7.5 \times 10^4$,$1 \leq x \leq 7.5 \times 10^4$。 性质 B:$r_i = -1$ 时 $1 \leq l_i \leq 2 \times 10^5$。 对于 $100\%$ 的数据: - $1 \leq n, m \leq 2 \times 10^5$。 - $1 \leq l_i \leq 10^9$,$r_i = -1$ 或 $1 \leq r_i \leq 10^9$。 - $1 \leq v_i \leq 10^9$。 - $1 \leq l \leq r \leq n$,$1 \leq x \leq 10^9$。