用了个很笨的办法~ 

同时学会了使用string.h里的memset

1: #include<iostream>
   2: #include<string.h>
namespace std;
int maxv=2000000;
int v[maxv]={0};
bool can[maxv]={0};
int n=0,totv=0;
   8:  
void get_input()
  10: {
sizeof(can));
  12:     can[0]=1;
  13:     cin >> totv;
  14:     cin >> n;
int i=0;i<n;i++) cin >> v[i];
  16: }
  17:  
int work()
  19: {
int i=0;i<n;i++)
int j=totv+1;j>=0;j--){
if (can[j]) can[j+v[i]]=true;
  23:         }
return i;
  25: }
  26:  
int main()
  28: {
  29:     get_input();
  30:     cout << totv-work() << endl;
  31: }

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-05
猜你喜欢
  • 2021-09-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-06
  • 2021-09-05
相关资源
相似解决方案