汉诺塔(3个圆盘)
直接上代码吧
1 #include <fstream> 2 #include <iostream> 3 4 using namespace std; 5 6 int step=0; 7 8 void move(char x,char y); 9 void hannoi(int n,char a,char b,char c); 10 11 int main(){ 12 int n; 13 scanf("%d",&n); 14 hannoi(n,'a','b','c'); 15 return 0; 16 } 17 void move(char x,char y){ 18 cout<<"move "<<++step<<" from "<<x<<" to "<<y<<endl; 19 } 20 void hannoi(int n,char a,char b,char c){ 21 if(n){ 22 hannoi(n-1,a,c,b); 23 move(a,b); 24 hannoi(n-1,c,b,a); 25 } 26 }