#include <iostream>
#include <string>
#include <cmath>
using namespace std;
void Move(int c, int s, int m, int e)
{
if (c == 1)
{
cout << s << ' ' << e << '\n';
return;
}
else
{
Move(c - 1, s, e, m);
cout << s << ' ' << e << '\n';
Move(c - 1, m, s, e);
}
}
int main()
{
int n;
cin >> n;
string s = to_string(pow(2, n));
int idx = s.find('.');
s = s.substr(0, idx);
s[s.length() - 1]--;
cout << s << endl;
if (n <= 20)
Move(n, 1, 2, 3);
return 0;
}
'코딩테스트 > 백준' 카테고리의 다른 글
[실4] 10866 - 덱 (0) | 2023.09.19 |
---|---|
[실3] 2346 - 풍선 터뜨리기 (0) | 2023.09.19 |
[실5] 4659 - 비밀번호 발음하기 (0) | 2023.09.14 |
[실5] 1439 - 뒤집기 (0) | 2023.08.31 |
[실4] 1755 - 숫자놀이 (0) | 2023.08.30 |