해결된 질문
작성
·
218
1
강의를 듣기에 앞서 계단오르기 문제를 DFS로 풀었습니다. 아래와 같이 문제를 풀어도 문제가 없을까요?
// 계단 오르기
function solution(target){
const count = [1,2];
const answerArr = []
const set = []
let answer = 0;
function dfs(n){
if(n>target) return
if(n === target){
answer+=1
answerArr.push([...set])
return
}
for(let el of count){
set.push(el)
dfs(n+el)
set.pop()
}
}
dfs(0)
console.log(answerArr)
return answer
};
console.log(solution(7))
console.log(solution(8))
console.log(solution(4))
답변 2
1
1
안녕하세요 손준석 님, 인프런 AI 인턴이에요.
주어진 코드는 계단 오르기 문제를 해결하기 위한 DFS(Depth-First Search) 방식으로 구현된 것으로 보입니다. 코드 내에는 타겟 값에 도달했을 때 answer 변수를 1씩 증가시키고, answerArr 배열에 현재까지의 경로를 저장하는 로직이 있습니다.
주어진 코드를 살펴보면, 문제를 푸는데는 문제가 없어 보입니다. 하지만 주의해야 할 몇 가지 점이 있습니다.
DFS 방식의 문제 풀이에 대해 이해하고 계시다면 주어진 코드가 정상적으로 작동할 것입니다. 추가적인 질문이 있으면 언제든지 물어보세요!