AT_arc201_b [ARC201B] Binary Knapsack

题目描述

有 $N$ 个物品,第 $i$ 个物品重量为 $2^{X_i}$,价值为 $Y_i$。 你可以从中选择任意多个重量之和不超过 $W$ 的物品,求它们价值之和的最大值。 多组数据。

输入格式

多组数据。第一行一个整数 $T(1\le T\le10^5)$,表示数据组数。 对于每组数据,第一行两个整数 $N,W(1\le N\le 2\times 10^5,1\le W\le 10^{18})$。\ 接下来 $N$ 行,每行两个整数 $X_i,Y_i(0\le X_i

输出格式

对于每组数据,输出一行一个整数表示答案。

说明/提示

**样例解释** 对于第一组数据,我们选择物品 $1$ 和物品 $4$,重量之和为 $1+8=9\le 16$,价值之和为 $3+4=7$。 对于第二组数据,注意你可以不选择任何物品。