본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다
자바스크립트 코드(나의 풀이)
// 하노이의 탑
function solution(n) {
const answer = [];
// from: 원반의 출발 기둥, to: 목표 기둥 other: 목표 기둥, disc: 원반 갯수
function hanoi(from, to, other, disc) {
// 재귀 함수 호출 종료
if (disc === 0) {
return;
} else {
// 원반 하나를 제외하고 목적지가 아닌 곳으로 이동시킴
hanoi(from, other, to, disc - 1);
// 맨 아래 원반을 목적지로 이동시킴
answer.push([from, to]);
// 다른 곳으로 옮겼던 원반을 목적지로 이동시킴
hanoi(other, to, from, disc - 1);
}
}
// 재귀 함수 호출
hanoi(1, 3, 2, n);
return answer;
}
Comment
오랜만에 재귀함수 문제를 풀려니 쉽지 않았다.
예전에 보았던 좋은 강의를 한 번 더... 얄팍한 코딩 - 재귀함수
Reference
'programming study > Algorithm' 카테고리의 다른 글
[프로그래머스] 큰 수 만들기 - JavaScript 풀이 (0) | 2022.06.25 |
---|---|
[프로그래머스] 타겟 넘버 - JavaScript 풀이 (0) | 2022.06.23 |
[프로그래머스] 신고 결과 받기 - JavaScript 풀이 (0) | 2022.01.28 |
[프로그래머스] 나머지가 1이 되는 수 찾기 - JavaScript 풀이 (0) | 2022.01.02 |
[프로그래머스] 최소 직사각형 - JavaScript 풀이 (0) | 2022.01.01 |