FrontEnd/프로그래머스

[JS] 타겟 넘버

728x90

dfs를 활용해서 모든 경우의 수를 탐색하면 된다!

 

지금 생각하면 왜 굳이 끝에서부터 검색을 했는지 모르겠다. 앞에서부터 차근차근 검색하는게 조금 더 깔끔한 코드가 되었을 것 같다.

 

 

function solution(numbers, target) {
    
    const dfs = (ary,num) => {
        if (!ary.length) return num===target ? 1 : 0
        
        return dfs(ary.slice(0,ary.length-1),num+ary[ary.length-1]) + dfs(ary.slice(0,ary.length-1),num-ary[ary.length-1])
    }
    
    return dfs(numbers,0)
}
728x90

'FrontEnd > 프로그래머스' 카테고리의 다른 글

[JS] 오픈채팅방  (0) 2023.06.28
[JS] 후보키  (0) 2023.06.27
[JS] 스킬트리  (0) 2023.06.27
[JS] 방문 길이  (0) 2023.06.25
[JS] 문자열 압축  (0) 2023.06.25