1 //01背包 价值等于体积 求所剩最小体积 
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 const int maxn=35;
 5 const int maxv=20005;
 6 int c,n,v[maxn],f[maxv];
 7 int main()
 8 {
 9     scanf("%d%d",&c,&n);
10     for(int i=1;i<=n;++i) scanf("%d",&v[i]);
11     for(int i=1;i<=n;++i)
12         for(int j=c;j>=v[i];--j)
13             f[j]=max(f[j],f[j-v[i]]+v[i]);
14     printf("%d",c-f[c]);
15     return 0;
16 } 

 

相关文章:

  • 2021-09-22
  • 2022-01-19
  • 2021-09-20
  • 2021-06-14
  • 2021-09-05
  • 2021-11-04
  • 2022-02-01
  • 2022-12-23
猜你喜欢
  • 2021-08-11
  • 2021-12-11
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2021-07-31
相关资源
相似解决方案