CF1282B1 K for the Price of One (Easy Version)

题目描述

这是该问题的简单版本。唯一的区别在于 $k$ —— 即优惠中商品的数量。在本版本中:$k=2$。 Vasya 来到商店为朋友们购买新年礼物。结果他非常幸运——今天商店正在进行“$k$ 件商品只需支付最贵那件的价格”的优惠活动。请注意,在本题中 $k=2$。 利用这个优惠,Vasya 可以任选 $k$ 件商品,只需支付其中最贵那件的价格。Vasya 决定抓住这个机会,用他手头的钱为朋友们尽可能多地购买商品。 更正式地说,每件商品的价格为 $a_i$ —— 即它需要的金币数。Vasya 最初有 $p$ 枚金币。他希望购买尽可能多的商品。Vasya 可以无限次执行以下操作之一: - 如果 Vasya 当前拥有的金币足够(即 $p \ge a_i$),他可以购买编号为 $i$ 的一件商品。购买后,Vasya 的金币数减少 $a_i$(即 $p := p - a_i$)。 - 如果 Vasya 当前拥有的金币足够(即 $p \ge a_i$),他可以购买编号为 $i$ 的一件商品,并且再任选 $k-1$ 件价格不超过 $a_i$ 的商品。这样,他可以用 $a_i$ 的价格买下这 $k$ 件商品,Vasya 的金币数减少 $a_i$(即 $p := p - a_i$)。 请注意,每件商品最多只能购买一次。 例如,若商店有 $n=5$ 件商品,价格分别为 $a_1=2, a_2=4, a_3=3, a_4=5, a_5=7$,$k=2$,Vasya 有 $6$ 枚金币,那么他最多可以购买 $3$ 件商品。Vasya 可以不使用优惠直接购买编号为 $1$ 的商品,花费 $2$ 枚金币。编号为 $2$ 和 $3$ 的商品可以通过优惠一起购买,花费 $4$ 枚金币。可以证明,Vasya 用 $6$ 枚金币无法买到更多商品。 请帮助 Vasya 计算他最多能买到多少件商品。

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。 接下来的若干行描述 $t$ 个测试用例。 每个测试用例的第一行包含三个整数 $n, p, k$($2 \le n \le 2 \cdot 10^5$,$1 \le p \le 2\cdot10^9$,$k=2$),分别表示商店中商品的数量、Vasya 拥有的金币数以及可以用最贵商品价格购买的商品数量。 每个测试用例的第二行包含 $n$ 个整数 $a_i$($1 \le a_i \le 10^4$),表示每件商品的价格。 保证所有测试用例中 $n$ 的总和不超过 $2 \cdot 10^5$。保证本题所有测试用例均有 $k=2$。

输出格式

对于每个测试用例,输出一行一个整数 $m$,表示 Vasya 最多能买到的商品数量。

说明/提示

由 ChatGPT 4.1 翻译