1 条题解

  • 0
    @ 2022-06-14 19:57:30
    #include<cstdio>
    using namespace std;
    int m,n;                //m即箱子容量V
    int f[20010];
    int w[40];
    int main(){
        int i,j;
        scanf("%d%d",&m,&n);
        for(i=1;i<=n;i++){
            scanf("%d",&w[i]);
        }
        for(i=1;i<=n;i++){
            for(j=m;j>=w[i];j--){
                if(f[j]<f[j-w[i]]+w[i]){
                    f[j]=f[j-w[i]]+w[i];
                }
            }
        }
        printf("%d\n",m-f[m]);
    }
    
    
  • 1

[NOIP2001 普及组] 装箱问题

信息

ID
1212
难度
4
分类
动态规划 | 背包 点击显示
标签
递交数
8
已通过
1
通过率
12%
上传者