题解 | #[NOIP2001]装箱问题#

[NOIP2001]装箱问题

https://www.nowcoder.com/practice/55100a6608ad4656849dbd1f16d044cb

#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;
//目的就是计算能够装的最大体积
//首先定义dp[j]表示箱内容量为j时体积最大值
int main() {
    int m;
    int n;
    cin>>m>>n;
    int v[n];
    vector <int> dp(m+1,0);
    for(int i=0;i<n;i++){
        cin>>v[i];
    }
    for(int i=0;i<n;i++){
        for(int j=m;j>0;j--){
            if(v[i]<=j){
                dp[j]=max(dp[j],dp[j-v[i]]+v[i]);
            }
        }
    }
    cout<<m-dp[m];
    return 0;
}
// 这段代码完全可以背诵

全部评论

相关推荐

10-21 00:37
已编辑
门头沟学院 C++
小浪_Coding:你问别人,本来就是有求于人,别人肯定没有义务免费回答你丫, 有点流量每天私信可能都十几,几十条的,大家都有工作和自己的事情, 付费也是正常的, 就像你请别人搭把手, 总得给人家买瓶水喝吧
点赞 评论 收藏
分享
09-14 17:23
门头沟学院
故事和酒66:所以说副业很重要,程序员干到40岁,再怎么也赚300万了,吃吃利息也够活下去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务