#SLT09A. 2026年S组模拟赛10连测第9场-T1 程老师的冷库囤货
2026年S组模拟赛10连测第9场-T1 程老师的冷库囤货
| 项目 | 内容 |
|---|---|
| 输入文件名 | stock.in |
| 输出文件名 | stock.out |
| 可执行文件名 | stock |
| 每个测试点时限 | 1.0 秒 |
| 内存限制 | 512 MiB |
| 测试点数目 | 20 |
| 是否等分 | 是 |
结果比较方式为全文比较(过滤行末空格及文末换行)。
题目描述
程老师经营一间冷库,专门做蔬果批发的生意。这一批货他进了 种商品,每种商品只有一件,商品按 编号。冷库从入库当天开始出货:第 天是能出货的第一天,这批货能安排的日子就是第 天到第 天,一天一天往下排,没有更晚的档期。第 种商品的保质期是 天,意思是它在第 天到第 天之间都能拿出来卖,第 天是它还能卖的最后一天,过了这一天就报废,只能丢掉。
冷库每天只开一次出货口。这一趟最多能装走 件商品,装几件都可以,但至多 件,装不下就得留到后面再安排。一件商品只会卖出一次,卖出它的那一天不能晚于它的保质期。第 种商品卖出去一件,程老师能赚 元。
请替程老师把这批货的出货档期排出来:每种商品分别在哪一天卖出,或者干脆不卖报废掉,使得这批货赚到的总金额最大。你只需要告诉他这个最大的总金额。
输入格式
从文件 stock.in 中读入数据。
- 第一行两个整数 ,依次表示商品的种数与每天出货的件数上限;
- 接下来 行,第 行两个整数 ,依次表示第 种商品的保质期天数与卖出一件能赚到的金额。
输出格式
输出到文件 stock.out 中。
一行一个整数,表示这批货能赚到的最大总金额。
样例
4 2
2 50
1 20
2 30
1 10
110
样例 1 解释
这批货共 种商品,每天最多出 件。保质期只有 天的是利润 和利润 这两件,它们只能在第 天卖,第 天就已经报废了;第 天恰好能装 件,把这两件都排上。剩下两种保质期为 天的商品(利润 与 )排在第 天。这样 件商品全部卖出,总金额为 。而这批货全部商品的利润之和就是 ,不可能再多。
3 1
1 100
1 50
2 60
160
样例 2 解释
每天最多出 件。第 天能卖的只有保质期为 天的那两件,货口这一趟只装得下 件,取利润更大的 那件。第 天卖保质期为 天的那件,得 。利润 的那件在第 天没排上,第 天已经过了保质期,只能报废。总金额为 。如果第 天改卖 那件,第 天仍然只装得下 件( 那件),总金额只有 ,比 低。
数据范围
对于所有测试数据,保证:
- ,;
- ,;
- 每种商品只有一件。
各测试点的约束如下:
| 测试点 | 特殊性质 | |
|---|---|---|
| 无 | ||
| A | ||
| B |
- 特殊性质 A:;
- 特殊性质 B:所有 。
- ID
- 3801
- 类型
- 传统题
- Time Limit
- 1000ms
- Memory Limit
- 512MiB
- 上传者