#P6637. 「BalticOI 2024」Jobs
「BalticOI 2024」Jobs
题目描述
题目译自 BalticOI 2024 Day1「Jobs」
你拥有一家通过为客户完成工作来赚钱的企业。目前,你可以从 个一次性工作中进行选择,编号从 到 。
完成第 个工作会带来 欧元的利润。利润也可能为负数()。
有些工作依赖于另一个工作。也就是说,可能存在一个编号为 的工作必须先完成,然后才能开始第 个工作。因此,一个利润很高的工作如果它依赖于一个利润为负的工作,就可能比看起来的吸引力小。如果 ,第 个工作没有任何依赖关系。
你目前拥有 欧元。只要满足依赖关系,你可以决定完成哪些工作以及按什么顺序完成它们。此外,你拥有的钱数在任何时候都不能变为负数。
请计算通过选择完成部分(可能没有) 个工作并按选定的顺序完成,可以获得的最大利润。
输入格式
第一行两个整数 和 ,分别表示工作数和你最初拥有的钱数。
接下来 行,第 行包含两个整数 和 ,分别表示利润和完成工作 之前需要完成的工作编号。如果 ,则表示工作 没有工作依赖。
输出格式
输出一个整数,表示你能获得的最大利润。
6 1
3 0
-3 1
-5 0
2 1
6 3
-4 5
6
数据范围与提示
对于所有数据,满足:
- (对于所有 )
- (对于所有 )
详细子任务附加限制及分值如下表所示。
子任务编号 | 附加限制 | 分值 |
---|---|---|
且对于所有工作,要么 ,要么 | ||
对于所有工作,要么 ,要么 | ||
无附加限制 |