竞赛
考级
亚洲卷王 AK IOI
这题可以递归,dfs(inth,charstart,charend,charmiddle)dfs(int h, char start, char end, char middle)dfs(inth,charstart,charend,charmiddle) 表示 hhh 个盘子要从 startstartstart 盘移动到 endendend 盘,借助 middlemiddlemiddle 盘,则需要先把 h−1h-1h−1 个盘子从 startstartstart 盘移动到 middlemiddlemiddle 盘借助 endendend 盘,然后将第 hhh 个盘移动到 endendend 盘,然后将 middlemiddlemiddle 上的 n−1n-1n−1 个盘,移动到 endendend 盘借助 startstartstart 盘,当没有盘的时候返回。
AC君
代码如下,比较基础,解说在注释里
紫幽梦魇Grimm
cat
宏也能递归捏
ACGO
纳西妲赋予了我超乎常人智慧
复仇者_纳西妲厨一位
私密马赛
nc小鬼,我吃柠檬!!!
苏联老兵申请吃螺!!!!
第一秩序 - TIE
#include<bits/stdc++.h> using namespace std; map<string,int> mp; int n; void f(int n,char a,char b,char c) { if(n==0)return; f(n-1,a,c,b); printf("%c --%d--> %c\n",a,n,c); f(n-1,b,a,c); } int main() { int n; cin>>n; f(n,'A','B','C'); return 0; }
????????????????
SZY2077 ด้้้้้็
#include<iostream> using namespace std; void hannuo(int n, char a, char b, char c) { if (n == 1) { cout << a << " --" << n << "--> " << c << endl; } else { hannuo(n - 1, a, c, b); cout << a << " --" << n << "--> " << c<< endl; hannuo(n - 1, b, a, c); } } int main() { int n; cin >> n; hannuo(n, 'A', 'B', 'C'); return 0; }
鬼影之魂
疯小害
元气满满