汉诺塔移动数   ans = pow(2, n) - 1;

推荐博客:https://blog.csdn.net/xb2355404/article/details/79144451

#include <iostream>
using namespace std;

inline void move(char A, char B)
{
	cout << A << " -> " << B << endl;
}
void hanoi(int n, char A, char B, char C)
{
	if(n == 1)
		move(A, C);
	else
	{
		hanoi(n-1, A, C, B);
		move(A, C);
		hanoi(n-1, B, A, C);
	}
}
int main()
{
	char A = 'A';
	char B = 'B';
	char C = 'C';
	int n;
	cin >> n;
	hanoi(n, A, B, C);


	return 0;
}