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 | 29 | 30 |
Tags
- AABB
- Vector
- Graham Scan
- dp
- GJK
- PS
- 우분투
- 충돌 알고리즘
- Unity
- 수학
- 알고리즘
- 내적
- c#
- linux
- C
- 외적
- Expanding Polytope Algorithm
- SOH
- 벡터
- Doubly Connected Edge List
- 문제풀이
- 분할축 이론
- 보로노이다이어그램
- ubuntu
- 다이나믹 프로그래밍
- C++
- 리눅스
- 유니티
- uclidean algorithm
- 백준
Archives
- Today
- Total
마이 플밍 블로그
백준 1914 - 하노이탑 본문
#include <iostream>
#include <cmath>
#include <vector>
#include <string>
#define _CRT_SECURE_NO_WARNINGS
using namespace std;
void path(int n, char start, char goal) {
printf("%c %c\n", start, goal);
}
void hanoi(int n, char start, char goal, char assist) {
if (n == 1) {
path(n, start, goal);
}
else {
hanoi(n - 1, start, assist, goal);
path(n, start, goal);
hanoi(n - 1, assist, goal, start);
}
}
int main() {
int n;
cin >> n;
string a = to_string(pow(2, n));
int x = a.find('.'); // pow는 실수로 나와 소수점 찾기
a = a.substr(0, x); // 소수점 앞자리만
a[a.length() - 1] -= 1; // 마지막 인덱스 값 -1
cout << a << endl;
if(n <= 20)
hanoi(n, '1', '3', '2');
return 0;
}
'문제풀이 > 백준' 카테고리의 다른 글
백준 2110 - 공유기 설치 (0) | 2021.10.10 |
---|---|
백준 10816 - 숫자카드2 (0) | 2021.10.10 |
백준 1992 - 쿼드트리 (0) | 2021.10.09 |
백준 2178 미로찾기 (0) | 2021.07.02 |
백준 1991 트리 순회 (0) | 2021.07.02 |