Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
142232 | 江婉儿 | 简单背包问题2 | C++ | 运行超时 | 60 | 1000 MS | 252 KB | 457 | 2024-04-06 17:33:27 |
#include<bits/stdc++.h> using namespace std; int s,n,w[35]; bool used[35]; bool a(int m) { if(m==0)return 1; else { for(int i=1;i<=n;i++) { if(w[i]<=m&&used[i]==0) { used[i]=1; if(a(m-w[i]))return 1; used[i]=0; } } return 0; } } int main() { cin>>s>>n; for(int i=1;i<=n;i++)cin>>w[i]; sort(w+1,w+1+n); for(int i=0;i<=s;i++) if(a(s-i)) { cout<<i; break; } return 0; }