#include <iostream>
#define INDENT_SIZE 2
using namespace std;
void hanoi(int n, int m, char from, char dest, char aux) {
cout << string(static_cast<unsigned long>(m - n) * INDENT_SIZE, ' ');
cout << "+ hanoi(n: " << n << ", from: " << from << ", dest: " << dest << ", aux: " << aux << ")" << endl;
if (n > 1) hanoi(n - 1, m, from, aux, dest);
cout << string(static_cast<unsigned long>(m - n + 1) * INDENT_SIZE, ' ');
cout << "- move(n: " << n << ", from: " << from << ", dest: " << dest << ")" << endl;
if (n > 1) hanoi(n - 1, m, aux, dest, from);
}
int main() {
int n;
cin >> n;
hanoi(n, n, 'A', 'C', 'B');
return 0;
}#include <iostream>
#define INDENT_SIZE 2
using namespace std;
void hanoi(int n, int m, char from, char dest, char aux) {
cout << string(static_cast<unsigned long>(m - n) * INDENT_SIZE, ' ');
cout << "+ hanoi(n: " << n << ", from: " << from << ", dest: " << dest << ", aux: " << aux << ")" << endl;
if (n > 1) hanoi(n - 1, m, from, aux, dest);
cout << string(static_cast<unsigned long>(m - n + 1) * INDENT_SIZE, ' ');
cout << "- move(n: " << n << ", from: " << from << ", dest: " << dest << ")" << endl;
if (n > 1) hanoi(n - 1, m, aux, dest, from);
}
int main() {
int n;
cin >> n;
hanoi(n, n, 'A', 'C', 'B');
return 0;
}#include <iostream>
using namespace std;
void hanoi(int n, char from, char dest, char aux) {
if (n > 1) hanoi(n - 1, from, aux, dest);
cout << from << "→" << dest << endl;
if (n > 1) hanoi(n - 1, aux, dest, from);
}
int main() {
int n;
cin >> n;
hanoi(n, 'A', 'C', 'B');
return 0;
}