‹ 上一题 下一题 ›

s09195. 前置任务 未做

1000 ms 256 MB 测试点 10 通过率 33% S-06·贪心进阶与反悔贪心反悔堆

题目描述

个任务,每个任务的加工时长均为 分钟;任务 的截止时刻为 ,完成后获得报酬 。任务之间有前置关系: 是任务 的直接前置任务编号, 表示没有前置。保证所有前置关系构成一片等长任务路径森林:每个任务至多一个直接前置,也至多一个直接后继,且不成环;一条任务路径指一条极大的前驱后继链;所有任务路径的长度(任务个数)相同,且同一条任务路径上所有任务的截止时刻相同。

接单以整条任务路径为单位:接下路径上任何一个任务,就必须接下这条路径的全部任务,要么整条全接、要么整条全不接。机器从时刻 开始单线程加工,同一时刻只能加工一个任务,加工不可中断;每个被接任务的完成时刻不得超过它的截止时刻,路径内任务按前置顺序加工。

求能获得的报酬总和的最大值。

输入格式

第一行一个整数 。

接下来 行,第 行三个整数 。

输出格式

一行一个整数,表示报酬总和的最大值。

样例 1

样例

输入
6
5 2 0
5 9 1
5 8 0
5 3 3
4 1 0
4 4 5
输出
22

三条任务路径:(总时长 、总报酬 、截止 )、(总时长 、总报酬 、截止 )、(总时长 、总报酬 、截止 )。按截止从早到晚接:先接 (总时长 ),再接 (总时长 );到 时总时长 超过截止 的检查,退掉总报酬最小的路径 (报酬 ),总时长回到 。最终保留 与 ,总报酬 。

样例 2

路径 总时长 ,整条无法在截止前完成,只能整条放弃;接路径 得报酬 。

数据范围

;; 且 ;前置关系构成等长任务路径森林,同一条任务路径上所有任务的 相同。答案可能超过 位整数范围。

输入
输出

            
答案