算法训练 Hanoi问题

code

#include<iostream>
#include<algorithm>
using namespace std;
int cnt = 0 ;
void fun(int n, int m, char a, char b, char c) {
	if (n <= m) {
		cnt++;
	} else {
		fun(n - m, m, a, c, b);
		cnt++;
		cout<<a<<b<<c<<'\n';
		fun(n - m, m, b, a, c);
	}
}
int main() {
	ios::sync_with_stdio(false);
	int n, m;
	cin >> n >> m;
	fun(n, m, 'X', 'Y', 'Z');
	cout << cnt << '\n';
	return 0;
}
posted @ 2022-02-02 09:26  ethon-wang  阅读(24)  评论(0编辑  收藏  举报