洛谷 P1049 [NOIP2001 普及组] 装箱问题

自用。

题目传送门:[NOIP2001 普及组] 装箱问题 - 洛谷

题解:Inori_333

参考题解:无

cpp 复制代码
/*
    P1049 [NOIP2001 普及组] 装箱问题
    https://www.luogu.com.cn/problem/P1049
    2024/10/27  submit:inori_333
*/
#include <iostream>
#include <cstring>
using namespace std;

int vol, n;//v表示箱子容积,n表示物品数量
int v[31];//v[i]表示第i个物品的体积
int dp[20005];//dp[i]表示体积为i的箱子最多能装体积为多少的物品


int main(){
    cin >> vol >> n;
    memset(dp,0,sizeof(dp));
    for (int i = 1; i <= n;i++){
        cin >> v[i];
    }
    for (int i = 1; i <= n;i++){
        for (int j = vol; j >= v[i];j--){
            dp[j]=max(dp[j],dp[j-v[i]]+v[i]);
        }
    }
    cout << vol - dp[vol];
}
相关推荐
机器学习之心7 分钟前
198种组合算法+优化BiGRU双向门控循环单元+SHAP分析+新数据预测+多输出!深度学习可解释分析,强烈安利,粉丝必备!
深度学习·算法·shap分析·新数据预测·优化bigru
小胖xiaopangss41 分钟前
栈的压入弹出序列--牛客
数据结构·c++·算法
Shimmer_ocean41 分钟前
P1420 最长连号
c++·模拟
_给我学起来43 分钟前
前缀和数组
算法
程序员莫小特1 小时前
老题新解|求三角形面积
开发语言·数据结构·c++·算法·信息学奥赛一本通
mc23561 小时前
C语言指针详解
c语言·开发语言·算法
Asmalin1 小时前
【代码随想录day 30】 力扣 763. 划分字母区间
算法·leetcode·职场和发展
小欣加油1 小时前
leetcode 526 优美的排列
c++·算法·leetcode·职场和发展·深度优先·剪枝
KL41801 小时前
[QT]常用控件一
开发语言·c++·qt
代码充电宝2 小时前
LeetCode 算法题【简单】49. 字母异位词分组
java·算法·leetcode·面试·哈希算法