BOJ/백준-11729-python

cosmos·2021년 4월 12일
2
post-thumbnail
post-custom-banner

문제📖

풀이🙏

  • 첫째 줄에 첫 번째 장대에 쌓인 원판의 개수 N이 주어진다.
  • 두 번째 줄부터 수행 과정을 출력하라.
  • 두 번째 줄부터 K개의 줄에 걸쳐 두 정수 A B를 빈칸을 사이에 두고 출력하는데, 이는 A번째 탑의 가장 위에 있는 원판을 B번째 탑의 가장 위로 옮긴다는 뜻이다.

코드💻

# boj, 11729 : 하노이 탑 이동 순서, python3
import sys

def hanoi(n, s, e, b):
    if n == 1:
        print(s, end=' ')
        print(e)
        return
    hanoi(n - 1, s, b, e)
    print(s, end=' ')
    print(e)
    hanoi(n - 1, b, e, s)

    
N = int(sys.stdin.readline())
k = 2 ** N - 1
print(k)
hanoi(N, 1, 3, 2)

결과😎

출처📝

https://www.acmicpc.net/problem/11729

github

github

post-custom-banner

0개의 댓글