Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Python
- DP
- javascript
- group by
- 프로그래머스
- 파이썬
- programmers
- Dynamic Programming
- Lv. 1
- bfs
- LEVEL 2
- level 3
- SQL
- select
- 오블완
- Baekjoon
- Lv. 2
- SQL 고득점 KIT
- 너비 우선 탐색
- softeer
- Lv. 3
- 소프티어
- join
- Java
- 티스토리챌린지
- 자바스크립트
- 깊이 우선 탐색
- Lv. 0
- 백준
- dfs
Archives
- Today
- Total
몸과 마음이 건전한 SW 개발자
백준 GOLD 5 [11729번] 하노이 탑 이동 순서 {언어 : Python} [다시 풀어 보기] 본문
문제 링크
https://www.acmicpc.net/problem/11729
정답 코드
n = int(input())
dp = [0] * 21
dp[1] = 1
for i in range(2, 21):
dp[i] = dp[i-1] * 2 + 1
print(dp[n])
def hanoi(number, start, end, assist):
if number == 1:
print(start, end)
return
else:
hanoi(number-1, start, assist, end)
print(start, end)
hanoi(number-1, assist, end, start)
hanoi(n, 1, 3, 2)
풀이 방법
- 파라미터에 숫자, 시작 지점, 옮길 위치, 경유할 위치로 구분한다.
- 숫자가 1인 경우 한 번만 이동하면 된다.
- 나머지는 이 풀이를 보면 좋을 것 같다.
'하노이의 탑' 이해하기 (feat. 재귀 함수)
들어가며 하노이의 탑 문제 소개 문제 정의 아이디어 얻기 아이디어 재귀 출발점, 도착점, 경유점 문제 분해 실제 코드 번외 : 원반의 개수에 따른 총 이동횟수 구하기 마무리 자료 출처 https://www
mgyo.tistory.com
느낀점
- 하노이탑은 재귀라기보단 수학 문제에 가까운 것 같다.
'알고리즘 > 다시 풀어 보기' 카테고리의 다른 글
백준 GOLD 5 [9251번] LCS {언어 : Python} [다시 풀어 보기] (0) | 2025.02.13 |
---|---|
백준 GOLD 5 [2565번] 전깃줄 {언어 : Python} [다시 풀어 보기] (0) | 2025.02.10 |
백준 GOLD 5 [12865번] 평범한 배낭 {언어 : Python} [다시 풀어 보기] (0) | 2025.01.24 |
코드트리 | Two Pointer / 가장 짧은 부분합 {언어 : Python} [다시 풀어 보기] (0) | 2024.12.31 |
프로그래머스 [Lv. 4] 올바른 괄호의 갯수 {언어 : Python} [다시 풀어 보기] (0) | 2024.11.26 |