#P1640. 毕业BG
毕业BG
背景
每年毕业的季节都会有大量毕业生发起狂欢,好朋友们相约吃散伙饭网络上称为“”
题面
参加不同团体的 会有不同的感觉,我们可以用一个非负整数为每个 定义一个“快乐度 ”
现给定一个长为 的 列表,上面列出每个 的快乐度 、持续长度 、 发起人的离校时间
注意 必须在发起人离开前结束,你不可以中途离开一场 ,也不可以中途加入一场 。
又因为你的人缘太好,可能有多达30个团体 你,所以你需要写个程序来解决这个时间安排的问题。
请你安排一系列 的时间使得自己可以获得最大的快乐度之和
输入格式
测试输入包含若干测试用例
每个测试用例的第1行包含一个整数
随后有 行,每行给出一场 的信息:
其中 是快乐度, 是持续时间(小时), 是发起人离校时间
数据保证 不大于 ,因为若发起人必须在 小时后离开, 必须在主人离开前结束。
当 为负数时输入结束。
输出格式
每个测试用例的输出占一行,输出最大快乐度 。
范例
输入
$3\\ 6 \quad 3\quad 3\\ 3\quad 2\quad 2\\ 4\quad 1\quad 3\\ 4\\ 5\quad 1\quad 1\\ 10\quad 2\quad 3\\ 6\quad 1\quad 2\\ 3\quad 1\quad 1\\ -1$
输出
说明
第1场快乐度为5 ,持续1小时,发起人必须在1小时后离开
第2场快乐度为10,持续2小时,发起人必须在3小时后离开
第3场快乐度为6 ,持续1小时,发起人必须在2小时后离开
第4场快乐度为3 ,持续1小时,发起人必须在1小时后离开
则获得最大快乐度的安排应该是:
先开始第3场,获得快乐度6,在第1小时结束,发起人也来得及离开
再开始第2场,获得快乐度10,在第3小时结束,发起人正好来得及离开
此时已经无法再安排其他的 ,因为发起人都已经离开了学校
因此获得的最大快乐度之和为16。
数据范围
- 至多有 个测试用例
Related
In following contests: