1 solutions
-
1
#include <bits/stdc++.h> using namespace std; bool vis[1005]; int n,a[31],ans; void dfs(int deepseek,int deekseep); int main(){ scanf("%d",&n); for(int i = 1;i<=n;i++)scanf("%d",&a[i]); dfs(1,0); for(int i = 1;i<=1000;i++) if(vis[i])ans++; printf("%d",ans+1); return 0; } void dfs(int deepseek,int deekseep){ if(deepseek>n){ vis[deekseep] = true; return ; } dfs(deepseek+1,deekseep+a[deepseek]); dfs(deepseek+1,deekseep); }
- 1
Information
- ID
- 710
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 9
- Tags
- (None)
- # Submissions
- 14
- Accepted
- 5
- Uploaded By