NC230453. Dependencies
描述
安装时有``完整安装"和``简单安装"两种选项,``完整安装"相比``简单安装"多消耗一些的空间。安装完成后删除安装包可以释放一定的空间。
同时,每个软件对阿任来说有一定的重要程度,但他只关注``完整安装"的软件。
初始机器上有的剩余空间,第
个软件的重要程度、简单安装所需空间、安装包大小、``完整安装"相比``简单安装"所需的额外空间分别用
表示。
由于安装顺序是确定的,阿任在安装过程中难以抉择``完整安装"和``简单安装"。对于已``完整安装"的软件,无法再将其退回``简单安装"状态,
但目前``简单安装"的软件可以在安装依赖它的软件时升级到``完整安装"状态。
安装流程与限制如下:
当前机器剩余空间为
时,当且仅当前
个软件都安装完毕,且
时,可以进行第
个软件的``简单安装",剩余空间变为
。
当前机器剩余空间为
时,当且仅当前
个软件都安装完毕,且
并且
时,可以进行第
个软件的``完整安装",剩余空间变为
。
安装完成第
个软件后,若还有足够的空间,可以选择若干个软件
依赖的软件
,将其从``简单安装"状态花费
的空间升级至``完整安装"状态。
即无论选择何种方式安装,至少所需的剩余空间都是,并且安装完成后剩余空间非负。
注意,依赖关系不会传递,若软件依赖软件
,软件
依赖软件
,但软件
不直接依赖软件
,不能在安装
后升级
。
大部分软件仅需的额外空间即可从简单安装升级至完整安装,至多有
个软件需要更多空间。
在个软件全部安装完毕的前提下,阿任只看重``完整安装"软件的重要程度,并希望最大化它们的和。
输入描述
第一行为三个整数,分别代表软件个数,依赖条目数和初始剩余空间量,
,
,
。
后续
行,每行四个整数
,代表第
个软件的重要程度,简单安装所需空间、安装包大小、完整安装相比简单安装所需的额外空间,
,
,
,至多有
个
。
后续
行,每行两个整数
,表示
安装时依赖
,保证每个软件不会依赖编号比它更大的软件,并且依赖关系不会重复出现。
数据保证若所有软件都选择``简单安装",一定能全部安装完毕,并且至多存在
个
,
。
输出描述
输出一行一个整数,这个软件全部安装完毕的前提下(无论是``简单安装"还是``完整安装"),输出最多能获得的重要程度之和。
示例1
输入:
4 4 10 9 5 3 1 3 8 6 1 10 4 2 2 5 3 2 1 2 1 3 2 4 1 4 2
输出:
17
说明:
对于样例简单安装软件,空间剩余
完整安装软件,空间剩余
,由于软件
依赖软件
,此时升级安装软件
,空间剩余
简单安装软件,空间剩余
完整安装软件,空间剩余
示例2
输入:
4 3 13 1000 6 0 2 100 3 0 1 10 2 1 1 1 2 1 1 3 1 2 1 4 3
输出:
110
示例3
输入:
6 7 13 11 10 8 1 14 2 0 1 0 4 2 1 100 2 1 2 3 4 3 1 16 4 1 1 3 2 6 1 6 2 4 2 5 4 3 1 2 1
输出:
30