洛谷 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];
}
相关推荐
莫等闲-43 分钟前
leetcode42. 接雨水 leetcode84.柱状图中最大的矩形
数据结构·c++·算法·leetcode
爱吃生蚝的于勒43 分钟前
QT开发第二章——信号和槽
c语言·开发语言·c++·qt
unicrom_深圳市由你创科技43 分钟前
历史数据存储量太大,怎么处理?数据压缩/归档策略?
算法
浅念-44 分钟前
LeetCode 记忆化搜索 刷题总结
数据结构·算法·leetcode·职场和发展·深度优先·dfs
思麟呀1 小时前
C++工业级日志项目(八)最终上层接口
开发语言·c++
菜菜的顾清寒1 小时前
力扣HOT100(44)对称二叉树
数据结构·算法·leetcode
六bring个六1 小时前
c/c++面试踩坑笔记
c语言·数据结构·c++
石山代码1 小时前
如何在 C++ 中实现多态?
开发语言·c++
阿方.9181 小时前
C++ std::function 超全精讲 | 原理语法、适配对象、递归实现、回调场景、面试考点、易错坑点
开发语言·c++·bind·function
吃好睡好便好1 小时前
矩阵的左乘和右乘
人工智能·学习·线性代数·算法·matlab·矩阵