洛谷 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];
}
相关推荐
倒头就睡的小比特12 小时前
算法竞赛C++常用的STL
c++·算法
weilx123412 小时前
C++笔记-文件IO-<fcntl.h>
c++
小羊没烦恼!12 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
猎头南楼13 小时前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
Smileyqp沛沛14 小时前
前端?C++ ?较大差异基础罗列
c++·基础·前端转c++
C语言小火车14 小时前
C/C++ 为什么需要编译器?
开发语言·c++
旖旎夜光14 小时前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
wzdark14 小时前
大规模并行计算中的负载均衡算法研究4
算法
吞下星星的少年·-·15 小时前
C++ 萌新语法入门篇
c++·算法比赛
Because_of_Her115 小时前
并查集-听课笔记
笔记·算法·并查集