#include <iostream>
using namespace std;
//n代表盘子的数量,a代表放盘子的塔,b代表中间的辅助塔,c代表目标塔
void hanNuo(int n,char a,char b,char c){
if(n > 0){
//把上面的n-1个盘子,从a塔借助于c塔放到b塔上
hanNuo(n - 1,a,c,b);
//把最下面的第n个盘子,从a移动到c
cout<<a<<" To "<<c<<endl;
//将b塔上的n-1个盘子,从b移动到c借助于a
hanNuo(n - 1,b,a,c);
}
}
int main(){
int n;
cin>>n;
hanNuo(n,'A','B','C');
}
/**************************************************************
Problem: 1222
User: admin
Language: C++
Result: Accepted
Time:10 ms
Memory:2072 kb
****************************************************************/