11729 - 하노이 탑 이동 순서

LeeKyoungChang·2022년 3월 18일
0

Algorithm

목록 보기
69/203
post-thumbnail

📚 11729 - 하노이 탑 이동 순서

하노이 탑 이동 순서

 

이해

✔️ 하노이탑 규칙
1, 2, 3 탑이 있고 탑의 개수만큼 원판이 있을 때
(1) 작은 원반 n - 1개를 A에서 B로 이동한다.
(2) 큰 원반 1개를 A에서 C로 이동한다.
(3) 작은 원반 n - 1개를 B에서 C로 이동한다.

이와 같이 진행된다.

 

소스

import sys

read = sys.stdin.readline

n = int(read())

result = []


def hanoitab(num, f, b, t):
    if num == 1:
        result.append((f, t))
    else:
        hanoitab(num - 1, f, t, b)
        result.append((f, t))
        hanoitab(num - 1, b, f, t)


hanoitab(n, 1, 2, 3)

print(len(result))
for x, y in result:
    print(x, y)

 

채점 결과

스크린샷 2022-03-16 오후 11 48 49
profile
"야, (오류 만났어?) 너두 (해결) 할 수 있어"

0개의 댓글