等价背包--装箱问题

1024. 装箱问题 - AcWing题库

等价背包--装箱问题_第1张图片

 直接将消耗的体积变成价值即可,最后利用总的体积减去价值即是剩余的空间

 

#include
using namespace std;
int a[1000010];
int f[1000010];
int main()
{
    int n,v;
    cin>>v;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=v;j>=a[i];j--)
        {
            f[j]=max(f[j],f[j-a[i]]+a[i]);
        }
    }
    // for(int i=1;i<=v;i++)
    // {
    //     cout<

 

你可能感兴趣的:(ACM,算法,c++,动态规划)