1 条题解

  • 4
    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    const int N=50005;
    ll i,j,n,m;
    ll a[N],opt[N]={0};
    void xx(ll a[],ll opt[],ll m)
    {
        ll i,j;
        for(i=1;i<=n;i++)
            for(j=m;j>=a[i];j--)
        //  {
                opt[j]=max(opt[j],opt[j-a[i]]+a[i]);
                //cout<<j<<" "<<opt[j]<<endl;
        //  }
        cout<<m-opt[m];
    }
    int main ()
    {
        cin>>m>>n; 
        for(i=1;i<=n;i++)
            cin>>a[i];
        xx(a,opt,m);
        return 0;
    }
    
  • 1

信息

ID
1437
难度
5
分类
动态规划 | 背包 点击显示
标签
递交数
53
已通过
18
通过率
34%
上传者