Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
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 28 29 30 31
Archives
Today
Total
관리 메뉴

끄적끄적

프로그래머스 - 타겟 넘버(c++) 본문

알고리즘

프로그래머스 - 타겟 넘버(c++)

yenacathy97 2021. 4. 21. 17:23

이 문제는 처음에 브루트 포스로 접근하였는데, 시간 초과가 나서 dfs를 이용하여 해결하였다.

아직도 재귀 로직이 헷갈려서 고생했다. 관련 유형을 더 풀어볼 예정이다. 

void dfs(vector<int> numbers, int sum, int target, int index) {


	if (index == numbers.size() -1) {
		if (sum+numbers[index] == target) {
			
			cnt++;

		}
		if (sum - numbers[index] == target) {
			
			cnt++;
		}
		return;
	}

	

	

	dfs(numbers, sum+numbers[index], target, index+1);
	
	dfs(numbers, sum - numbers[index], target, index+1);



}

만약 1,2,3,4인 배열을 넣으면

1 2 3 4 /1 2 3 -4

1 2 -3 4/ 1 2 -3 -4

... 

이런 식으로 들어감을 유의하자 

'알고리즘' 카테고리의 다른 글

SWE 농작물 수확하기  (0) 2021.08.06
SWE 파리 퇴치  (0) 2021.08.06
백준 1916 최소 비용 구하기  (0) 2021.04.16
백준 1700 멀티탭 스케줄링  (0) 2021.04.06
백준 14719 - 빗물(C++)  (0) 2021.03.31
Comments