WIKIOI-1014 装箱问题

简介:

有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。

要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。

一个整数v,表示箱子容量

一个整数n,表示有n个物品

接下来n个整数,分别表示这个物品的各自体积

一个整数,表示箱子剩余空间。

24

6

8

3

12

7

9

7

0

 

 

思路:

经典的01背包问题,看代码吧

#include<stdio.h>
int w[20010];
int dp[20010],Weight;
int max(int a,int b)
{return a>b?a:b;}
int zeroOnePack(int n)//01背包
{
    for(int i=1; i<=n; i++)
    {
        for(int j=Weight; j>=w[i]; j--)
        {
            dp[j] = max(dp[j], w[i] + dp[j-w[i]]);
        }
    }
    return dp[Weight];
}
int main()
{
    int i,j,n;
    scanf("%d%d",&Weight,&n);
    for(i=1;i<=n;i++)
    scanf("%d",&w[i]);
    printf("%d\n",Weight-zeroOnePack(n));
    return 0;
} 


 

相关文章
|
21天前
|
存储 机器学习/深度学习 算法
皇后之战:揭秘N皇后问题的多维解法与智慧【python 力扣52题】
皇后之战:揭秘N皇后问题的多维解法与智慧【python 力扣52题】
|
2月前
装箱问题(背包问题)
装箱问题(背包问题)
18 0
|
12月前
1295:装箱问题
1295:装箱问题
洛谷P3194 [HNOI2008]水平可见直线(计算几何+单调栈)
洛谷P3194 [HNOI2008]水平可见直线(计算几何+单调栈)
85 0
洛谷P3194 [HNOI2008]水平可见直线(计算几何+单调栈)
多重背包问题与优化(裸题)(一)
多重背包问题与优化(裸题)
103 0
多重背包问题与优化(裸题)(一)
|
机器学习/深度学习 人工智能 BI
“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛题解&&源码【A,水,B,水,C,水,D,快速幂,E,优先队列,F,暴力,G,贪心+排序,H,STL乱搞,I,尼姆博弈,J,差分dp,K,二分+排序,L,矩阵快速幂,M,线段树区间更新+Lazy思想,N,超级快速幂+扩展欧里几德,O
黑白图像直方图 发布时间: 2017年7月9日 18:30   最后更新: 2017年7月10日 21:08   时间限制: 1000ms   内存限制: 128M 描述 在一个矩形的灰度图像上,每个像素点或者是黑色的或者是白色的。
1333 0
|
人工智能 机器学习/深度学习
wikioi 1098 均分纸牌
wikioi 1098 均分纸牌 2002年NOIP全国联赛提高组题目描述 Description 有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张, 但纸牌总数必为 N 的倍数。可以在任一堆上取若于张纸牌,然后移动。
878 0