BOJ::문제풀이

1182 부분집합의 합

2영재 2018. 4. 13. 22:37

1182 부분집합의 합


완전탐색해주면 된다!


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
using namespace std;
 
int n, s, res;
int a[20];
 
void dfs(int idx, int sum) {
    if (sum + a[idx] == s) res++;
 
    if (idx == n - 1)return;
 
    dfs(idx + 1, sum);
    dfs(idx + 1, sum + a[idx]);
}
 
int main(){ 
    cin >> n >> s;
 
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    
    dfs(00);
    cout << res << endl;
}
 
 
cs