Run ID | 作者 | 问题 | 语言 | 测评结果 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
31075 | Andrew宥杨 | 汉诺塔问题 | C++ | 解答错误 | 0 MS | 252 KB | 425 | 2023-11-14 20:52:20 |
#include<bits/stdc++.h> using namespace std; void hnt(int n,char a,char b,char c){ if(!n){//n=0,结束。 return; } hnt(n-1,a,c,b);//少一个盘子,c换b printf("%c->%d->%c",a,n,b);//不用cout因为cout比printf时间复杂度更高 hnt(n-1,c,b,a);//再少一个盘子,c、a地位交换 } int main(){ int n; char a,b,c; cin>>n>>a>>b>>c; hnt(n,a,b,c);//输入,调用函数; return 0; }