开始 2026-04-17 00:00:00

童织码编程:月赛B组——4

结束 2026-05-11 00:00:00
Contest is over.
当前 2026-05-14 23:55:22

D. 26年4月-B组(才俊)D. 建筑工地

描述

某建筑工地需要堆砌一座总高度不超过 T(1≤T≤10^3)单位的建材堆垛。

现有 N(1≤N≤10^2)种标准建材模块可供使用。第 i 种模块的原始高度为 Hi(5≤Hi≤T 且 Hi 是 5 的倍数),结构强度评分为 Vi(1≤Vi≤10^6)。

堆垛规则如下:

·若某模块的原始高度 Hi≥K(1≤K≤T),则称其为“大尺寸模块”。
·当一个模块上方存在至少一个大尺寸模块时(即当前模块直接或间接被堆叠在某个大尺寸模块下方),当前模块会因承压而发生压缩变形,压缩后这个模块的有效高度变为原始高度的 4/5(即乘以 0.8)。注意:无论上方有多少个大尺寸模块,每个模块只会被压缩一次(即压缩效果不叠加)。
·被压缩后的模块有效高度用于计算堆垛总高度,但模块自身的结构强度评分 Vi保持不变。
·每一种模块可以重复使用任意数量。

目标是在总有效高度不超过 T 的前提下,最大化堆垛的结构强度评分总和。

输入

第一行三个整数 N,T,K,分别表示模块种类数、最大允许总高度、大尺寸模块的高度阈值。

接下来 N 行,每行两个整数 Vi,Hi,分别表示第 i 种模块的结构强度评分和原始高度。

输出

输出一行一个整数,表示可能的最大结构强度评分总和。

样例

输入

3 53 25
100 25
20 5
40 10

输出

240

输入

2 30 20
50 20
30 10

输出

90

输入

4 35 15
100 15
80 20
60 10
40 5

输出

300

提示

说明

样例说明

样例 #1

最优堆垛方案(自顶向下列举):

总有效高度:25+4+8+8+8=53≤T

总评分:100+20+40+40+40=240

数据范围

对于 100% 的数据,满足 1≤T≤1000,1≤N≤100,1≤K≤T,5≤Hi≤T,且 Hi 是 5 的倍数,1≤Vi≤10^6。


Submit

登录

注册
时间限制 1 秒
内存限制 128 MB
提交