摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 失误原因(初次提交分数)
装箱问题 ★☆☆☆☆ 答案正确 100 2014/11/04 19:48:55 算法错误(0)

题意

经典问题,又称0-1背包问题。

题解

最经典的DP了没什么好说的。第一次一手滑居然交成完全背包。

代码

1014.cpp代码已折叠
展开折叠内容
#include<cstdio>
#include<algorithm>
int v,n,vi[50],Ans;
bool u[30000]={1};
int main()
{
    scanf("%d%d",&v,&n);
    for(int i=1;i<=n;++i)
        scanf("%d",&vi[i]);
    for(int i=1;i<=n;++i)
        for(int j=v;j>=vi[i];--j)
        {
            if(u[j-vi[i]]&&!u[j])
            {
                u[j]=1;
                Ans=std::max(Ans,j);
            }
        }
    printf("%d",v-Ans);
    return 0;
}

著作权声明[编辑]

关于[编辑]