#SY1104. 信息素养决赛-4 滑雪板分组
信息素养决赛-4 滑雪板分组
滑雪板分组与最小夹板长度
共有 n 块滑雪板,第 i 块滑雪板的重量为 Gi,长度为 Li。需要将全部滑雪板分成若干组装入木箱。
每组必须满足:组内滑雪板重量总和不超过包裹最大承重 G。每个木箱需要两根夹板,夹板长度等于该组内最长滑雪板的长度。
请合理分组,使所有木箱所需夹板的总长度最小。
输入格式
第一行输入两个整数 n、G,分别表示滑雪板数量和单个木箱的最大承重。
接下来 n 行,每行输入两个整数 Gi、Li,表示一块滑雪板的重量和长度。
输出格式
输出一个整数,表示最小夹板总长度。
数据范围
- 1 ≤ n ≤ 9;
- 1 ≤ Gi ≤ G ≤ 30;
- 1 ≤ Li ≤ 100;
- 每块滑雪板都可以单独装入一个木箱;
- 每组木箱需要 2 根夹板。
子任务
- 子任务 1(15 分):n ≤ 3。
- 子任务 2(25 分):n = 5,包含样例数据。
- 子任务 3(30 分):n ≤ 7。
- 子任务 4(30 分):n = 9,需要在较严格时间限制内完成状态搜索。
样例
输入
5 5
2 1
1 2
1 3
2 3
2 2
输出
10
样例说明
一种最优分组为:
- 重量 1、长度 3;重量 2、长度 3;重量 2、长度 2;
- 重量 1、长度 2;重量 2、长度 1。
两组的最长长度分别为 3 和 2,夹板总长度为:
3 + 2 × 2 = 10