mirror of
https://github.com/Light-City/CPlusPlusThings.git
synced 2026-04-24 02:40:52 +08:00
support bazel complie this project and format code.
This commit is contained in:
25
practical_exercises/10_day_practice/day2/hanoi.cpp
Normal file
25
practical_exercises/10_day_practice/day2/hanoi.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
/* 汉诺塔.cpp */
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
void move(char A, char B);
|
||||
void hanoi(int n, char A, char B, char C);
|
||||
int main(int argc, char const *argv[]) {
|
||||
cout << "请输入盘子数量:";
|
||||
int disks;
|
||||
cin >> disks;
|
||||
hanoi(disks, 'A', 'B', 'C');
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user