CF28D Don't fear, DravDe is kind
题目描述
一支由 $ n $ 辆卡车组成的车队,正从城市「Z」驶往城市「З」。途中,车队来到了一条名为「恐怖隧道」的隧道前。
卡车司机之间一直流传着一个传说:怪物 DravDe 会在这条隧道中捕食司机。有些司机害怕第一个进入隧道,有些司机害怕最后一个进入。不过,我们考虑更一般的情况。
每辆卡车由四个数描述:
$ v $ —— 这辆卡车及其乘客、货物的总价值;
$ c $ —— 卡车上的人数,包括司机;
$ l $ —— 在这辆卡车之前**恰好**需要有多少人进入隧道,司机才能克服恐惧(「如果怪物从车队前方出现,它会先吃掉他们」);
$ r $ —— 在这辆卡车之后**恰好**需要有多少人进入隧道,司机才能克服恐惧(「如果怪物从车队后方出现,它会先吃掉他们」)。
由于道路十分狭窄,一旦 DravDe 从某一侧出现,车队便无路可逃。
此外,车队的顺序不能改变。你不能重新排列这些卡车,但可以将任意一些卡车移出车队,让它们无限期地停留在隧道外。
作为车队的负责人,你需要移走一部分卡车,使得剩余的卡车都愿意进入隧道,并且进入隧道的卡车的总价值最大。
输入格式
第一行输入一个整数 $n$($1 \leq n \leq 10^5$)——车队中的卡车数量。接下来的 $n$ 行,每行包含四个整数,表示第 $i$ 辆卡车的参数:$v_i, c_i, l_i, r_i$($1 \leq v_i \leq 10^4, 1 \leq c_i \leq 10^5, 0 \leq l_i, r_i \leq 10^5$)。卡车按从车队前端到后端由 $1$ 开始编号。
输出格式
第一行输出 $k$——驶入隧道的卡车数量。第二行输出 $k$ 个整数——这些卡车的编号,且编号递增。注意卡车顺序不允许改变。如果有多组方案,输出任意一组均可。
说明/提示
由 ChatGPT 5 翻译