-
재귀로 하노이탑을 짜주면 됩니다.
#include <bits/stdc++.h> using namespace std; void f(int n, char a, char b, char c) { // n번째 원판 a에서 c로 옮김 if (n == 1) { cout << a << " " << c << "\n"; return; } f(n - 1, a, c, b); cout << a << " " << c << "\n"; f(n - 1, b, a, c); } int main(void) { int n; cin >> n; cout << (1 << n) - 1 << "\n"; f(n, '1', '2', '3'); }