竞赛
考级
#include<iostream> using namespace std; long long n; string so = "A", dest = "C"; string mid = "B"; void hanoi(long long n, string so, string mid, string dest){ if (n==1){ cout<<so<<" --"<<n<<"--> "<<dest<<endl; return ; } hanoi(n-1, so, dest, mid); cout<<so<<" --"<<n<<"--> "<<dest<<endl; hanoi(n-1, mid, so, dest); } int main(){ cin>>n; hanoi(n, so, mid, dest); return 0; } 还是不太懂递归的思路
LZGBRans0n
༺ཌༀ元气满满ༀད༻
爱吃奶油的金桔
#include<bits/stdc++.h> using namespace std; void lz(int n,char a,char b,char c){ if(n<=0) return; lz(n-1,a,c,b); printf("%c --%d--> %c\n",a,n,c); lz(n-1,b,a,c); } int main(){ int n; cin>>n; lz(n,'A','B','C'); return 0; }
霄
#include <iostream> using namespace std; void dfs(int h, char start, char end, char middle) { if (h == 0) { return; } dfs(h - 1, start, middle, end); cout << start << " --" << h << "--> " << end << "\n"; dfs(h - 1, middle, end, start); } int main() { int n; cin >> n; dfs(n, 'A', 'C', 'B'); return 0; }
编程之神
Smile
共27条
提交答案之后,这里将显示提交结果~