CF2126D.This Is the Last Time
普及-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
你有 n 个赌场,编号从 1 到 n。每个赌场由三个整数描述:li、ri 和 reali(li≤reali≤ri)。你最初有 k 枚硬币。
你只有在当前硬币数 x 满足 li≤x≤ri 时,才能在第 i 个赌场玩。玩完后,你的硬币数会变为 reali。
你可以以任意顺序访问这些赌场,并且不要求必须访问所有赌场。每个赌场最多只能访问一次。
你的任务是通过合理选择访问赌场的顺序,使最终获得的硬币数最大。
输入格式
第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。
每个测试用例的第一行包含两个整数 n 和 k(1≤n≤105,0≤k≤109),分别表示赌场数量和初始硬币数。
接下来的 n 行,每行包含三个整数 li、ri、reali(0≤li≤reali≤ri≤109),表示第 i 个赌场的参数。
保证所有测试用例中 n 的总和不超过 105。
输出格式
对于每个测试用例,输出一个整数,表示在最优访问顺序下你最终能获得的最大硬币数。
输入输出样例
输入#1
5 3 1 2 3 3 1 2 2 3 10 10 1 0 1 2 2 1 2 1 2 2 2 2 1 3 2 2 4 4 2 5 1 10 5 3 6 5
输出#1
10 0 2 4 5
说明/提示
在第一个测试用例中,你可以先去第 2 个赌场,此时你有 2 枚硬币。然后可以去第 1 个赌场,硬币数增加到 3。最后去第 3 个赌场,最终硬币数为 10,这是最大可能的数量。
在第二个测试用例中,你没有钱,所以无法获得更多。
在第四个测试用例中,直接去第 2 个赌场可以获得 4 枚硬币,这是最优选择。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?