문제
풀이
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int DFS(vector<int> numbers, int target, int death, int sum, int answer);
int solution(vector<int> numbers, int target) {
int answer = 0;
answer = DFS(numbers, target, 0, 0, 0);
return answer;
}
int DFS(vector<int> numbers, int target, int death, int sum, int answer)
{
if (numbers.size() == death)
{
if (sum == target)
{
return answer + 1;
}
return answer;
}
answer = DFS(numbers, target, death + 1, sum + numbers[death], answer);
answer = DFS(numbers, target, death + 1, sum - numbers[death], answer);
return answer;
}
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 오픈채팅방 (0) | 2021.08.26 |
---|---|
[코딩테스트] 카펫 (0) | 2021.08.22 |
[코딩테스트] 체육복 (0) | 2021.08.13 |
[코딩테스트] 두 정수의 합 (0) | 2021.08.12 |
[코딩테스트] 다리를 지나는 트럭 (0) | 2021.08.10 |