5 条题解
-
-1
#include <iostream> #include <algorithm> #include <cmath> #include <cstring> #include <cstdio> #include <string> #include <iomanip> #include <queue> #include <stack> #include <list> #include <map> #include <vector> #include <fstream> using namespace std; const int N = 1e5+10; const int INF = 0x3f3f3f3f; int maxx = -INF,n,minn = INF,v; int a[N]; void dfs(int step,int sum){ if (sum <= v) maxx = max(maxx,sum); if (sum > v or step > n) return; dfs(step+1,sum+a[step]); dfs(step+1,sum); } int main(){ cin >> v >> n; for (int i = 1;i<=n;i++){ cin >> a[i]; } dfs(1,0); cout << v - maxx; return 0; }
信息
- ID
- 1300
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- 递交数
- 295
- 已通过
- 79
- 上传者