tony9402

[백준 1182] 부분집합의 합 본문

알고리즘/Baekjoon Online Judge

[백준 1182] 부분집합의 합

ssu_gongdoli 2018. 10. 20. 20:57
반응형

쉬운 문제인데 엄청난 뻘짓을 해서 계속 제출 했던 문제


그냥 모든 경우의 수를 다 돌리면 된다.



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>
#include<vector>
 
using namespace std;
 
vector<int> vc;
 
int sum(int n, int k, int max, int s)
{
    int cal = s + vc[n];
    int ans = (cal == k);
    for (int i = n + 1; i < max; i++)ans += sum(i, k, max, cal);
    return ans;
}
 
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    int n, k, ans = 0;
    cin >> n >> k;
    vc.resize(n);
    for (auto &i : vc)cin >> i;
    for (int i = 0; i < vc.size(); i++)ans += sum(i, k, n, 0);
    cout << ans;
    return 0;
}

cs


반응형

'알고리즘 > Baekjoon Online Judge' 카테고리의 다른 글

[백준 1806] 부분합  (0) 2018.10.20
[백준 5656] 비교 연산자  (0) 2018.10.20
[백준 11657] 타임머신  (0) 2018.08.31
[백준 1504] 특정한 최단 경로  (0) 2018.08.31
[백준 1753] 최단경로  (0) 2018.08.31
Comments