P10987 [蓝桥杯 2023 国 Python A] 火车运输

P10987 [蓝桥杯 2023 国 Python A] 火车运输

题目背景

为照顾 Python 语言的效率,本题时限较大。建议使用 PyPy3 提交本题。

题目描述

钢厂有一辆用于运送废旧钢材的火车,它具有两节车厢,其中车厢 1 的最大载重量为 A A A,车厢 2 的最大载重量为 B B B。现在一共有 N N N 件废旧钢材需要被运输,其中第 i i i 件钢材的重量为 w i w_i wi,为了最大化运输效率,车长想要一次性运输走重量尽可能多的钢材,请你帮助车长计算出一次运输最多可以带走多大重量的钢材。

每件钢材都是独立的不可分割的,只能被放置在某一节车厢中。在装载钢材时只需要考虑重量条件即可。

输入格式

输入的第一行包含三个整数 N , A , B N ,A,B N,A,B,用一个空格分隔,分别表示钢材的数目以及两节车厢的最大载重。

第二行包含 N N N 个整数,分别表示 w 1 , w 2 , ⋯   , w n w_1,w_2, \cdots,w_n w1,w2,⋯,wn,相邻两个整数之间使用一个空格分隔。

输出格式

输出一个整数表示答案。

输入输出样例 #1

输入 #1

复制代码
3 10 8
8 9 1

输出 #1

复制代码
18

说明/提示

对于 30 % 30\% 30% 的评测用例, 1 ≤ N ≤ 10 1 \le N \le 10 1≤N≤10;

对于所有评测用例, 1 ≤ N ≤ 200 , 1 ≤ w i , A , B ≤ 1000 1 \le N \le 200,1 \le w_i ,A,B \le 1000 1≤N≤200,1≤wi,A,B≤1000。

样例解释

车厢 1 装入第 2 2 2 件和第 3 3 3 件钢材,车厢 2 装入第 1 1 1 件钢材。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int N=110;
#define int long long

int dp[1010][1010]; // 定义dp数组

signed main(){
    int n, a, b;
    int aa[N];
    cin >> n >> a >> b;
    for(int i = 1; i <= n; i++) cin >> aa[i];
    for(int i = 1; i <= n; i++) {
        for(int j = 0; j <= a; j++) {
            for(int k = 0; k <= b; k++) {
                if(j >= aa[i]) {
                    dp[j][k] = max(dp[j][k], dp[j - aa[i]][k] + aa[i]);
                }
                if(k >= aa[i]) {
                    dp[j][k] = max(dp[j][k], dp[j][k - aa[i]] + aa[i]);
                }
            }
        }
    }
    cout << dp[a][b] << endl;
    return 0;
}
相关推荐
学历真的很重要7 小时前
【系统架构师】第二章 操作系统知识 - 第二部分:进程与线程(补充版)
学习·职场和发展·系统架构·系统架构师
hqyjzsb8 小时前
盲目用AI提效?当心陷入“工具奴”陷阱,效率不增反降
人工智能·学习·职场和发展·创业创新·学习方法·业界资讯·远程工作
YuTaoShao9 小时前
【LeetCode 每日一题】1653. 使字符串平衡的最少删除次数——(解法一)前后缀分解
算法·leetcode·职场和发展
VT.馒头10 小时前
【力扣】2727. 判断对象是否为空
javascript·数据结构·算法·leetcode·职场和发展
网络安全-杰克11 小时前
Jmeter压力测试工具安装与使用
自动化测试·软件测试·测试工具·jmeter·职场和发展
June bug11 小时前
【PMP】敏捷Scrum实践
经验分享·职场和发展·学习方法·scrum
_OP_CHEN12 小时前
【算法基础篇】(五十七)线性代数之矩阵乘法从入门到实战:手撕模板 + 真题详解
线性代数·算法·矩阵·蓝桥杯·c/c++·矩阵乘法·acm/icpc
2501_9011478313 小时前
面试必看:优势洗牌
笔记·学习·算法·面试·职场和发展
网安墨雨13 小时前
Python自动化一------pytes与allure结合生成测试报告
开发语言·自动化测试·软件测试·python·职场和发展·自动化
铉铉这波能秀13 小时前
LeetCode Hot100 中 enumerate 函数的妙用(2026.2月版)
数据结构·python·算法·leetcode·职场和发展·开发