전공시간때 배웠지만
백준 11729 하노이탑
알고리즘
: 가장 마지막 과정을 생각해보면 n-1개의원반이 2번에 있고 마지막 원반을 1번에서 3번으로 옮긴 후 다시 2번에 있는 n-1개의 원반들을 3번으로 옮기는 과정이다.

int hanoi(int n, int from, int mid, int to) {
if (n == 1) {
printf("%d %d\n", from, to);
return;
}
hanoi (n - 1, from, to, mid);
printf("%d %d\n", from, to);
hanoi(n - 1, mid, from, to);
}
원반 이동 횟수: 2^n-1
참고 [백준] 11729번 : 하노이 탑 이동 순서 - JAVA [자바] (tistory.com)
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1157번 시간 5배 차이났던 풀이(파이썬) (0) | 2023.10.07 |
---|---|
[백준] 12865 평범한 배낭(파이썬) - 냅색 알고리즘 (0) | 2023.09.27 |
재귀함수 시간초과 (0) | 2023.02.08 |
전공시간때 배웠지만
백준 11729 하노이탑
알고리즘
: 가장 마지막 과정을 생각해보면 n-1개의원반이 2번에 있고 마지막 원반을 1번에서 3번으로 옮긴 후 다시 2번에 있는 n-1개의 원반들을 3번으로 옮기는 과정이다.

int hanoi(int n, int from, int mid, int to) {
if (n == 1) {
printf("%d %d\n", from, to);
return;
}
hanoi (n - 1, from, to, mid);
printf("%d %d\n", from, to);
hanoi(n - 1, mid, from, to);
}
원반 이동 횟수: 2^n-1
참고 [백준] 11729번 : 하노이 탑 이동 순서 - JAVA [자바] (tistory.com)
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 1157번 시간 5배 차이났던 풀이(파이썬) (0) | 2023.10.07 |
---|---|
[백준] 12865 평범한 배낭(파이썬) - 냅색 알고리즘 (0) | 2023.09.27 |
재귀함수 시간초과 (0) | 2023.02.08 |