文章

59

粉丝

0

获赞

331

访问

7.9k

头像
Hanoi塔问题 题解:
P1082 复旦大学机试题
发布于2026年3月12日 16:47
阅读数 176

#include <bits/stdc++.h>
using namespace std;

int step;
void hanoi(int n,char a,char b,char c)
{
	if(n==1)
	{
		cout<<a<<"-->"<<c;
		if((++step)%5!=0)
			cout<<"   ";
		else
			cout<<endl;
		return;
	}
	hanoi(n-1,a,c,b);
	hanoi(1,a,b,c);
	hanoi(n-1,b,a,c);
}
	
int main()
{
	int N;
	while(cin>>N)
	{
		if(!N)
			break;
		step=0;
		hanoi(N,'A','B','C');
		cout<<endl;
	}
	return 0;
}
		

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发