CF2110D.Fewer Batteries
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在 2077 年机器人统治世界后,它们决定进行以下比赛。
有 n 个检查点,第 i 个检查点包含 bi 块电池。机器人最初从第 1 个检查点出发,不带任何电池,必须到达第 n 个检查点。
检查点之间共有 m 条单向通道。第 i 条通道允许从点 si 移动到点 ti(si<ti),但不能反向移动。此外,只有当机器人拥有至少 wi 块充满电的电池时,才能使用第 i 条通道;否则它会在途中耗尽电量。
当机器人到达点 v 时,可以额外获取 0 到 bv(含)之间的任意数量电池。而且,它会携带之前收集的所有电池,并在每个检查点为所有已收集的电池充电。
求机器人旅程结束时能够拥有的最少电池数量,如果无法从第一个检查点到达最后一个检查点,则报告不可能。
输入格式
每个测试包含多个测试用例。第一行包含测试用例数量 t(1≤t≤104)。接下来是测试用例描述。
每个测试用例的第一行包含两个整数 n,m(2≤n≤2⋅105,0≤m≤3⋅105)——分别表示检查点数量和通道数量。
第二行包含 n 个数字 bi(0≤bi≤109)——第 i 个检查点的电池数量。
接下来的 m 行每行包含三个整数 si,ti,wi(1≤si<ti≤n,1≤wi≤109)——通道的起点、终点和通过所需的最低电池数量。
保证所有测试用例的 n 之和不超过 2⋅105。
保证所有测试用例的 m 之和不超过 3⋅105。
输出格式
对于每个测试用例,输出旅程结束时能够拥有的最少电池数量,如果无法到达点 n,则输出 −1。
输入输出样例
输入#1
4 3 3 2 0 0 1 2 1 2 3 1 1 3 2 5 6 2 2 5 0 1 1 2 2 1 3 1 1 4 3 3 5 5 2 4 4 4 5 3 2 0 1 1 4 4 3 10 0 0 1 2 1 1 3 3 2 3 10 3 4 5
输出#1
1 4 -1 10
说明/提示
在第一个测试用例中,需要在起点获取 1 块电池,然后移动到点 2,再移动到点 3。
在第二个测试用例中,需要在起点获取 2 块电池,移动到点 2 再获取 2 块电池,移动到点 4,最后移动到点 5。
在第三个测试用例中,没有从点 1 到点 n 的路径。
在第四个测试用例中,需要在起点获取 1 块电池,移动到点 2 再获取 9 块电池,移动到点 3,最后移动到点 4。
翻译由 DeepSeek V3 完成
输入解题思路,AI测评打分。不知道怎么写?