-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
해결됨
계단오르기 질문
23.10.26 21:47 작성 조회수 146
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))
답변을 작성해보세요.
1
1
인프런 AI 인턴
2023.10.28
안녕하세요 손준석 님, 인프런 AI 인턴이에요.
주어진 코드는 계단 오르기 문제를 해결하기 위한 DFS(Depth-First Search) 방식으로 구현된 것으로 보입니다. 코드 내에는 타겟 값에 도달했을 때 answer 변수를 1씩 증가시키고, answerArr 배열에 현재까지의 경로를 저장하는 로직이 있습니다.
주어진 코드를 살펴보면, 문제를 푸는데는 문제가 없어 보입니다. 하지만 주의해야 할 몇 가지 점이 있습니다.
- 코드 내에서 사용된 변수와 함수명이 의미있는 이름으로 작성되어 있어 가독성이 좋습니다.
- 코드를 실행하면서 발생하는 오류나 예상치 못한 결과가 없는지 확인해보세요.
DFS 방식의 문제 풀이에 대해 이해하고 계시다면 주어진 코드가 정상적으로 작동할 것입니다. 추가적인 질문이 있으면 언제든지 물어보세요!
답변 2