on my way

[프로그래머스 코딩테스트 연습] 하노이의 탑 (Python3) 본문

algorithm/Python

[프로그래머스 코딩테스트 연습] 하노이의 탑 (Python3)

wingbeat 2025. 2. 10. 23:20
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/12946#

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

하노이의 탑 프로세스

1. start의 N-1개의 원반을 보조 기둥으로 옮긴다 (aux)

2. 가장 큰 원반을 end로 옮긴다.

3. 보조의 N-1개의 원반을 end로 옮긴다.

def move(n, start, end, aux, answer):
    if n==1: 
        answer.append([start, end])
        return
    move(n-1, start, aux, end, answer) # n-1개 원반을 보조로 이동
    answer.append([start,end]) # 가장 큰 원반을 목적지로
    move(n-1, aux, end, start, answer) # 보조의 n-1개 원반을 목적지로
def solution(n):
    answer = []
    move(n, 1, 3, 2, answer)
    return answer
반응형