#include<stdio.h>
int i = 1;//定义全局变量,每次调用后加1
void Hanoi(int n, char A, char B, char C)
{
if (n == 1)//如果只有一个直接从A移到B "%2d-(%2d):%c==>%c\n"
{
printf("%c To %c\n",A,C);
}
else
{
Hanoi(n - 1, A, C, B);//把n - 1个从A移到C借助B
printf("%c To %c\n",A, C);
Hanoi(n - 1, B, A, C);//把n - 1个从C移到B借助B
}
}
int main()
{
int n;
char A = 'A'; //定义ABC表示三个柱子
char B = 'B';
char C = 'C';
scanf("%d", &n);
Hanoi(n, A, B, C);
return 0;
}
/**************************************************************
Problem: 1222
User: admin
Language: C
Result: Accepted
Time:9 ms
Memory:1144 kb
****************************************************************/