당신은 주제를 찾고 있습니까 “하노이 탑 점화식 – 수열의 점화식17(하노이의 탑)-박용대수학1281“? 다음 카테고리의 웹사이트 you.tfvp.org 에서 귀하의 모든 질문에 답변해 드립니다: https://you.tfvp.org/blog/. 바로 아래에서 답을 찾을 수 있습니다. 작성자 퀀텀수학 이(가) 작성한 기사에는 조회수 1,759회 및 좋아요 21개 개의 좋아요가 있습니다.
하노이 탑 점화식 주제에 대한 동영상 보기
여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!
d여기에서 수열의 점화식17(하노이의 탑)-박용대수학1281 – 하노이 탑 점화식 주제에 대한 세부정보를 참조하세요
하노이 탑 점화식 주제에 대한 자세한 내용은 여기를 참조하세요.
하노이의 탑과 점화식 – 블로그 – 네이버
제가 예전에 포스팅한 기억이 있는데요, 이번에는 하노이탑을 알아보는 데 그치지 말고 점화식을 이용하여 그 일반항을 유도해 내 보도록 하겠습니다.
Source: blog.naver.com
Date Published: 9/30/2022
View: 9304
하노이의 탑 – 나무위키:대문
그냥 점화식을 구하고 점화식을 토대로 일반항만 구했지, 이게 정말 최소횟수인지 증명하는 내용은 없다.).
Source: namu.wiki
Date Published: 12/29/2022
View: 9645
하노이 탑의 일반항을 구하기 – JW MATHidea
하노이 탑의 일반항을 구하기 옛날 베트남의 수도 하노이에 있는 한 불교 사원이 있었는데, 사람들이 이 사원이 세계의 중심이라고 믿었다.
Source: jwmath.tistory.com
Date Published: 2/22/2022
View: 3454
이산수학
하노이 탑 문제 (Hanoi Tower Problem) 를 생각하여 봅시다. Vietnam의 Hanoi시 외곽에 있는 Benares사원의 … 위와 같은 인접한 항과의 관계식을 우리는 점화식.
Source: web.cbnu.ac.kr
Date Published: 2/3/2021
View: 4239
하노이탑 공식 정리
1)하노이탑 퍼즐의 게임 규칙 목표: 한 기둥에 있는 원판들을 다른 기둥 두개 중 한 쪽으로 … 위와 같은 인접한 항과의 관계식을 우리는 점화식.
Source: skmagic.tistory.com
Date Published: 10/21/2021
View: 7465
[알고리즘 기본] 하노이 탑 알고리즘 – velog
또한, 풀이를 토대로 아래와 같이 점화식을 세울 수 있다. 먼저 ” 수열 …
Source: velog.io
Date Published: 9/16/2022
View: 9225
주제와 관련된 이미지 하노이 탑 점화식
주제와 관련된 더 많은 사진을 참조하십시오 수열의 점화식17(하노이의 탑)-박용대수학1281. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.
주제에 대한 기사 평가 하노이 탑 점화식
- Author: 퀀텀수학
- Views: 조회수 1,759회
- Likes: 좋아요 21개
- Date Published: 2019. 7. 24.
- Video Url link: https://www.youtube.com/watch?v=lG1UVOCMZwE
하노이의 탑과 점화식
안녕하세요. 이번에는 하노이의 탑이라는 것에 대한 이야기를 해 보도록 하겠습니다. 제가 예전에 포스팅한 기억이 있는데요, 이번에는 하노이탑을 알아보는 데 그치지 말고 점화식을 이용하여 그 일반항을 유도해 내 보도록 하겠습니다.
옛날에 신이 크기가 모두 다르고 막대에 끼울 수 있는 작은 구멍이 뚫려 있는 63개의 원판, 그리고 3개의 막대를 가지고 지구로 내려왔다고 합니다. 그러고는 이렇게 말하였다고 합니다.
“이 63개의 원판을 큰 원판이 밑으로 오도록 막대에 꽂도록 하여라. 그리고 다음과 같은 규칙으로 원판을 옮길 때, 이 63개의 원판이 모두 처음과 같은 순서로 다른 막대에 놓이는 순간, 이 세상은 멸망할 것이다.”
1. 원판은 1번에 1개씩만, 막대에서 막대로만 움직일 수 있다(땅에 내려놓거나 해서는 안 된다.)
2. 옮기는 과정에서, 작은 원판 위에 큰 원판이 올려지면 안 된다.
이러한 규칙으로 원판을 옮기도록 할 때, 원판이 n개 있을 때 최소 이동횟수 a(n)을 구해 보도록 하겠습니다. 이런 하노이탑은 점화식으로 표현 가능합니다. n개의 원판을 옮길 때 거치는 과정을 다음 3단계로 나눌 수 있습니다.
1단계 : 1번째 막대에 꽂혀 있는 n-1개의 원판을 2번째 막대로 옮긴다.
2단계 : 1번째 막대에 남은 1개의 가장 큰 원판을 3번째 막대로 옮긴다.
3단계 : 2번째 막대의 n-1개의 원판을 3번째 막대로 옮긴다.
이렇게 되면 모든 원판이 3번째 막대에 옮겨지게 됩니다.
그렇다면, 우선 1단계를 거치는 데 걸리는 최소 이동횟수는, n-1개의 원판을 다른 곳에 옮기는 것이므로 a(n-1)입니다. 그 후 2단계를 거치며 필요한 이동횟수는 1번이고요(큰 원판을 다른 곳에 옮기기만 하면 됩니다). 마지막으로 3단계를 거칠 때에는 n-1개의 원판을 이동시키는 것이므로 a(n-1)이 됩니다. 이들을 모두 더하면 a(n)이 되고요.
따라서, a(n)=a(n-1)+1+a(n-1)=2a(n-1)+1
이라는 점화식이 만들어집니다. 이제 이 점화식을 풀어 보도록 하겠습니다.
앙변에 1씩을 더하고 우변을 2로 묶으면 식은 a(n)+1=2{a(n-1)+1} 이 됩니다. 그 다음, 이 식의 n 자리에 n, n-1, … 3, 2을 대입한 후 변변 곱해 줍니다.
‘변변 곱하면’ 밑의 식에서 2^(n-1)이 등장한 이유는, 곱한 식은 총 n-1개이며 각 식마다 2가 1개씩 있어서 모두 곱하게 되면 2를 n-1변 곱하게 되기 때문입니다. 또, a(1)=1인 이유는, 1개의 원판을 다른 막대로 옮기는 데 필요한 최소 횟수는 1번이기 때문입니다. 그렇게 되면 최종 식, a(n)=2^n-1이 나오게 되는 것입니다.
이렇게 점화식을 이용하여 하노이 탑의 일반항을 구해 보았습니다. 다음에는 더 흥미로운 수학이야기로 돌아오겠습니다.
하노이 탑의 일반항을 구하기
하노이 탑의 일반항을 구하기
옛날 베트남의 수도 하노이에 있는 한 불교 사원이 있었는데, 사람들이 이 사원이 세계의 중심이라고 믿었다. 그 곳에는 높이가 50cm 정도 되는 다이아몬드 막대기가 3개 있었고, 그 중 한 막대기에는 순금으로 된 원판 64개가 큰 것부터 작은 것이 크기의 순서에 따라 가장 큰 것이 맨 아래, 가장 작은 것이 맨 위에 쌓여 있었다.
이 사원에는 대대로, 다이아몬드 막대기에 쌓여 있는 64개의 원판을 빈 막대기 중 하나에 옮기면 지구는 연기와 같이 우주 공간으로 사라진다는 말이 전해지고 있었다. 단, 원판을 옮기는 데는 몇 가지 지켜야할 규칙이 있는데 첫째, 원판은 한 번에 1개씩 옮겨야 하며, 둘째 큰 원판이 작은 원판 위로 올 수는 없다.
그럼 과연 이러한 규칙에 의해서 64개의 원판을 빈 막대기 중 하나에 옮길 수 있는 방법의 수는 과연 몇 가지가 될 것이지를 생각해 보자.
첫 번째로 원판의 개수에 따른 최소 시행횟수를 찾도록 하고, 두 번째로 최소 시행 횟수를 기초로 문제에 내제된 수학적 법칙을 추정하여 일반항을 구한다.
* 주의 : 반드시 원판 중 큰 것이 아래에 놓이도록 해야 한다.
■ 해법
(1) 원판의 개수에 따른 시행 횟수 구하고 추정하기 (실험을 통해 구하기)
원판의 수 1 2 3 4 5 6 7
… n 최소 이동횟수 1 3 7 15 31 63 127 추정하기 2-1
(2) 원리 찾기
: (n-1)개의 원판이 옮겨지는 횟수라 하자
: n 개의 원판이 옮겨지는 횟수라고 하자.
<원리를 찾아보자>
n 개의 원판을 옮기는 횟수 은 (n-1)개의 원판을 B 막대기에 옮기는 횟수 , 가장 밑에 있는 원판 1개를 C 막대기에 옮기는 횟수 1 , 그리고 다시 B 막대기에 있는 (n-1)개의 막대기를 C 막대기에 옮기는 횟수 의 합으로 나타낼 수 있다.
총이동 횟수 :
{A→B로 (n-1) 개 이동} + { A→C 1개 이동} + { B→C 로 (n-1)개 이동}
(3) 일반항 구하기
여러 가지 수열의 일반항을 구하는 요령으로 일반항을 구할 수 있다.
을 로 변형
( )
(4) 하노이 탑을 통해 여러 가지 수열에 대한 문제를 일상생활과 연관시켜 생각할 수 있고 스스로 직접 해결할 수 있는 능력을 기른다. 위의 하노이 탑의 일반항이 이므로 64개의 원판을 옮기는 경우의 횟수가 =18,446,744,073,709,551,615 라는 아주 큰 수가됨을 알 수 있다.
예를 들어 원판 1개를 옮기는데 1초가 걸린다고 가정하면 1년은 365×24×60×60=31,536,000회를 시행할 수 있다. 이런 식으로 64개의 원판을 옮기는데 소요되는 시간을 계산하면 약 5,833억년이 걸린다.
반응형
자기계발을 멈추면 죽는다
작은 원판 위에 그 원판보다 큰 원판이 있으면 안된다
규칙: 원판은 한번에 한개만 옮길 수 있다.
목표: 한 기둥에 있는 원판들을 다른 기둥 두개 중 한 쪽으로 옮기는 것
2)원판의 이동횟수 : 규칙알아보기
-원판의 개수에 따른 이동 횟수알아보기
1개 : 1번
2개 : 3번
3개 : 7번
4개 : 15개
.
.
.
일열로 나열해보면 1, 3, 7, 15…
> 첫번 째 규칙!
1.대 충 보면, 원판이 한개가 더 적을 때의 이동회수에 2를 곱하고 1을 더했다는 것을 알 수 있죠?
이 것을 보기 좋게 표현 하는 방법이 있답니다.
=> 바로, P(n-1)x2 +1
Pn의 의미는 무엇일까요?
P1은 1을 뜻하고, P2는 3을 뜻한답니다. P3는 7을 뜻하고, P4는 15를 의미한답니다~
즉, n은 원판은 개수이고, Pn은 n개의 원판의 개수에 따른 이동 횟수 이지요.
그리고, 1은 n에서 빼주는 것입니다. Pn을 하고 1을 빼주는 걸로 착각하지 마시길..!
2.그래도 이해가 안 가는 분들을 위해 그림으로 설명을 다시 드리지요!
1) 자 이상태는 아무 일도 일어나지 않은 보통 하노이탑입니다.
2) 이렇게 가장 아래의 원판만 제외하고 위의 원판들을 모두 다른 기둥으로 옮겼습니다.
그럼 이 때의 이동횟수가 + P(n-1) 이 되는 겁니다
3)가장 큰 원판을 다른 원판으로 옮기면? 이동횟수가 1이 증가 하겠지요
즉, 이 때 이동횟수가 +1 이 되는 거예요
P(n-1)
4)나머지 원판들을 큰 원판 위로 옮기면 이동횟수는 어떻게 될까요? 이동횟수는이 됩니다 ㅎㅎ
지금까지 거쳤던 3가지 과정의 이동회수를 더해서 정리해주면
2xP(n-1)+1 이 됩니다.
말로 생각하면, 원판의 개수가 지금보다 하나 더 적었을 때의 이동횟수에 2를 곱하고 1을 더했다는 것이지요.
> 두번 째 규칙!
1, 3, 7, 15, 31 … 이 수열의 이름은? 바로 계차 수열이랍니다.
+2 +4 +8 +16
P(n) = 2 P(n-1) + 1
[알고리즘 기본] 하노이 탑 알고리즘
하노이 탑 알고리즘
게임 설명
간단히 설명하면 원반(disk) 옮기기 퍼즐 이다.
이다. 하노이의 탑에는 서로 크기가 다른 원반이 n개 있고 원반을 끼울 수 있는 기둥이 세 개 있다. 어떻게 하면 원반 n개를 맨 왼쪽 기둥에서 맨 오른쪽 기둥으로 모두 옮길 수 있을까 를 고민해보는 문제다.
를 고민해보는 문제다. 하노이의 탑 규칙을 정리하면 아래와 같다.
세부 규칙
크기가 다른 원반 n개를 시작 기둥에서 도착 기둥으로 모두 옮겨야 한다.
원반은 한 번에 한 개씩만 옮길 수 있다.
원반을 뽑을 땐 기둥의 맨 위의 원반을 뽑아야 한다. (중간에 있는 원반은 어떤 경우에도 뽑을 수 없다.)
원반을 쌓을 땐 기둥의 맨 위에 쌓아야 한다. (원반과 원반 사이에 끼워 넣을 수 없다.)
원반을 쌓을 땐 큰 원반 위에 작은 원반을 올려야 한다. (작은 원반 위에 큰 원반을 올릴 수 없다.)
풀이
원반이 2개일 때
총 3 번 이동 1 번 원반을 1 에서 2 로 이동 2 번 원반을 1 에서 3 로 이동 1 번 원반을 2 에서 3 로 이동 원반이 3개일 때
총 7 번 이동 1 번 원반을 1 에서 3 로 이동 2 번 원반을 1 에서 2 로 이동 1 번 원반을 3 에서 2 로 이동 3 번 원반을 1 에서 3 로 이동 1 번 원반을 2 에서 1 로 이동 2 번 원반을 2 에서 3 로 이동 1 번 원반을 1 에서 3 로 이동 이미지 출처
원반이 한 개 라면, 시작 기둥에서 도착 기둥까지 1회 만에 옮길 수 있다.
라면, 시작 기둥에서 도착 기둥까지 만에 옮길 수 있다. 원반이 두 개 이상 이면 원반의 개수를 n 이라 할 때, 가장 아래에 있는 원반 n 을 도착 기둥에 옮기기 위해 그 위에 놓여 있는 n-1 개의 원반을 보조 기둥에 옮긴다. 원반 n 을 도착 기둥에 옮긴다. 보조 기둥에 있는 n-1 개의 원반을 도착 기둥에 옮긴다.
이면 원반의 개수를 이라 할 때, 재귀 적인 방법을 사용해 문제를 해결할 수 있다.
적인 방법을 사용해 문제를 해결할 수 있다. 파이썬 재귀 함수로 구현하면 아래와 같다.
파이썬 코드 구현 및 실행
MOVE_MESSAGE = “{}번 원반을 {}에서 {}로 이동” def move ( N , start , destination ) : print ( MOVE_MESSAGE . format ( N , start , destination ) ) def hanoi ( n , start , destination , via ) : “”” 하노이의 탑 규칙에 따라 원반을 옮기고, 옮길 때마다 원반의 시작 위치와 이동한 위치를 출력합니다. 마지막으로 총 이동 횟수를 반환합니다. :params n: 총 원반 개수 start: 시작 기둥 destination: 도착 기둥 via: 보조 기둥: :return count: “”” if n <= 1 : move ( 1 , start , destination ) return 1 count = 0 count += hanoi ( n - 1 , start , via , destination ) count += 1 move ( n , start , destination ) count += hanoi ( n - 1 , via , destination , start ) return count if __name__ == '__main__' : n = 3 start = 1 destination = 3 via = 2 total_count = hanoi ( n , start , destination , via ) print ( '총 이동 횟수:' , total_count ) ''' 출력 결과 1번 원반을 1에서 3로 이동 2번 원반을 1에서 2로 이동 1번 원반을 3에서 2로 이동 3번 원반을 1에서 3로 이동 1번 원반을 2에서 1로 이동 2번 원반을 2에서 3로 이동 1번 원반을 1에서 3로 이동 총 이동 횟수: 7 ''' 점화식 위의 풀이는 아래 식으로 정리할 수 있다. 또한, 풀이를 토대로 아래와 같이 점화식을 세울 수 있다. 먼저 " 수열 a n {a_n} an= n {n} n개의 원판을 이동하는 횟수 " 라고 정의하자. n {n} n개의 원판을 이동시키기 위해서는 그 위의 n {n} n- 1 {1} 1개의 원판을 다른 막대로 이동하고 맨 아래쪽 원판을 도착지로 이동해야 한다. 그리고 다시 n {n} n- 1 {1} 1개의 원판을 이동해야 하므로 다음과 같은 점화식이 성립한다. => a n {a_n} an = 2 a n − 1 {a_{n-1}} an−1 + {+} + 1 {1} 1
그리고 이를 일반항으로 풀어내면 2 n − 1 {{2^n} – 1} 2n−1 임을 알 수 있다.
참고
시간 복잡도
위의 점화식을 생각했을 때 결국 n 개의 원반을 모두 옮기기 위해서는
2 n − 1 {{2^n} – 1} 2 n − 1 번의 이동이 필요하고,
개의 원반을 모두 옮기기 위해서는 번의 이동이 필요하고, 시간 복잡도는 O( 2 n {2^n} 2 n ) 으로 볼 수 있다.
관련 문제
Ref
키워드에 대한 정보 하노이 탑 점화식
다음은 Bing에서 하노이 탑 점화식 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.
이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!
사람들이 주제에 대해 자주 검색하는 키워드 수열의 점화식17(하노이의 탑)-박용대수학1281
- 동영상
- 공유
- 카메라폰
- 동영상폰
- 무료
- 올리기
수열의 #점화식17(하노이의 #탑)-박용대수학1281
YouTube에서 하노이 탑 점화식 주제의 다른 동영상 보기
주제에 대한 기사를 시청해 주셔서 감사합니다 수열의 점화식17(하노이의 탑)-박용대수학1281 | 하노이 탑 점화식, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.