uoj#P402. 【CTSC2018】混合果汁

【CTSC2018】混合果汁

题目描述

小 R 热衷于做黑暗料理,尤其是混合果汁。

商店里有 $n$ 种果汁,编号为 $0, 1, 2, . . . , n − 1$。$i$ 号果汁的美味度是 $d_i$,每升价格为 $p_i$。小 R 在制作混合果汁时,还有一些特殊的规定,即在一瓶混合果汁中,$i$ 号果汁最多只能添加 $l_i$ 升。

现在有 $m$ 个小朋友过来找小 R 要混合果汁喝,他们都希望小 R 用商店里的果汁制作成一瓶混合果汁。其中,第 $j$ 个小朋友希望他得到的混合果汁总价格不大于 $g_j$,体积不小于 $L_j$。在上述这些限制条件下,小朋友们还希望混合果汁的美味度尽可能地高,一瓶混合果汁的美味度等于所有参与混合的果汁的美味度的最小值。请你计算每个小朋友能喝到的最美味的混合果汁的美味度。

输入格式

输入第一行包含两个正整数 $n, m$,表示果汁的种数和小朋友的数量。接下来 $n$ 行,每行三个正整数 $d_i, p_i, l_i$,表示 $i$ 号果汁的美味度为 $d_i$,每升价格为$p_i$,在一瓶果汁中的添加上限为 $l_i$。

接下来 $m$ 行依次描述所有小朋友:每行两个数正整数 $g_j, L_j$ 描述一个小朋友,表示他最多能支付 $g_j$ 元钱,他想要至少 $L_j$ 升果汁。

输出格式

对于所有小朋友依次输出:对于每个小朋友,输出一行,包含一个整数,表示他能喝到的最美味的混合果汁的美味度。如果无法满足他的需求,则输出 $−1$。

样例

样例输入 1

3 4
1 3 5
2 1 3
3 2 5
6 3
5 3
10 10
20 10

样例输出 1

3
2
-1
1

数据规模与约定

对于所有的测试数据,保证 $n, m \le 100000$,$1 \le d_i, p_i, l_i \le 10^5,1 \le g_j, L_j \le 10^{18}$。

测试点编号$n=$$m=$其他限制
$1,2,3$$10$$10$
$4,5,6$$500$$500$
$7,8,9$$5000$$5000$
$10,11,12$$100000$$100000$$p_i=1$
$13,14,15$$l_i=1$
$16,17,18,19,20$

时间限制:$2\mathtt{s}$

空间限制:$512\mathtt{MB}$