타겟넘버
-
[프로그래머스/JavaScript] 타겟 넘버 (Feat. forEach 함수)IT Study/프로그래머스 2023. 11. 7. 14:26
📃 최종 코드 테스트 통과에 정말 많은 시간이 소요되었습니다. (왜인지 확인하기 위해 시간복잡도를 확인해 봤습니다.) 아래 코드에서 저는 먼저 numbers 배열의 합을 구한 뒤, 1부터 numbers 배열의 길이까지의 원소를 선택하는 모든 조합을 구합니다. 각 조합의 합이 목푯 값과 일치하는지 확인합니다. 이렇게 모든 조합을 구하는 과정에서 getCombine 함수를 사용하며, 이 함수는 numbers 배열의 각 원소를 기준으로 재귀적으로 조합을 구합니다. 따라서, 이 함수의 시간 복잡도는 O(2^n)입니다. 전체 코드의 시간 복잡도는 각 원소를 선택하는 경우의 수(2^n)와 원소를 선택하는 횟수(n)를 곱한 O(n * 2^n) function solution(numbers, target) { let ..