#P1105. 限期作业

    ID: 117 传统题 1000ms 256MiB 尝试: 0 已通过: 0难度: 普及+/提高− ← 上一题 下一题 → 随机一题 上传者: 标签 贪心 堆 排序 反悔贪心
显示设置

限期作业

题目背景

期末周到了,作业平台上挂着 nn 份作业。每份作业整整占掉你一天时间,而一天最多只能交一份作业;第 ii 份作业必须不晚于第 did_i 天交上去,晚一天它就从待办列表里消失。老师早忘了给作业定分值,成绩单上的分数其实取决于作业本身的含金量 wiw_i。你打算挑一部分作业来做,把总分拿得尽量高。

题目描述

有 nn 份作业,完成第 ii 份作业需要占用完整的 11 天,且必须在第 did_i 天结束之前交,完成后可得 wiw_i 分。同一时间只能做一份作业。请求出能够按时交上的作业集合的最大总分。允许有作业压根不做。

输入格式

第一行一个整数 nn。

接下来 nn 行,每行两个整数 di,wid_i, w_i。

输出格式

一行一个整数,表示最大总分。

输入输出样例 #1

输入 #1

3
1 5
2 3
3 4

输出 #1

12

输入输出样例 #2

输入 #2

2
1 5
1 7

输出 #2

7

输入输出样例 #3

输入 #3

5
1 1
1 2
2 3
2 4
3 5

输出 #3

11

说明

样例解释

样例 1:三天分别做第一、二、三份作业,三份都能按时交,总分 5+3+4=125 + 3 + 4 = 12。

样例 2:两份作业都只能在第 11 天之前交,而第 11 天只能交一份,故只能拿 77 分。

样例 3:选择总分为 1515 的全部作业是不可行的:四份及以上作业需要至少四天,而所有作业的截止日期都不超过 33。去掉含金量较低的 11 分与 33 分两份作业,剩下三份可以安排在第 1,2,31, 2, 3 天完成,总分 1111,这是最大的。

数据范围

  • 对于 30%30\% 的数据,1≤n≤101 \le n \le 10;
  • 对于 60%60\% 的数据,1≤n≤50001 \le n \le 5000;
  • 对于 100%100\% 的数据,1≤n≤2×1051 \le n \le 2 \times 10^{5},1≤di≤n1 \le d_i \le n,1≤wi≤1091 \le w_i \le 10^{9},答案不超过 2×10142 \times 10^{14}。