어제 못 풀었던 하노이의 탑 분할정복 문제를 다시 풀어보았다.
def move_disk(disk_num, start_peg, end_peg):
print("%d번 원판을 %d번 기둥에서 %d번 기둥으로 이동" % (disk_num, start_peg, end_peg))
def hanoi(num_disks, start_peg, end_peg):
if(num_disks==1):
return move_disk(num_disks,start_peg,end_peg)
# 코드를 입력하세요.
hanoi(num_disks-1,start_peg,6-start_peg-end_peg)
move_disk(num_disks,start_peg,end_peg)
hanoi(num_disks-1,6-start_peg-end_peg,end_peg)
# 테스트 코드 (포함하여 제출해주세요)
hanoi(3, 1, 3)
코드잇에서 알고리즘 관련 강의를 수강중이다. 설명이 자세하고 바로 적용할 수 있도록 해줘서 좋다.
어제와는 조금 다른 방식으로 풀 수 있었다.