2 条题解

  • 0
    @ 2026-2-1 14:52:59

    按照题目给的思路递归即可,复杂度约 O(2n)O(2^n)
    在处理 n=1n=1 的情况时不要忘了 return;

    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    int n;
    void hnt(int n,char yl,char fz,char mb){
        if(n==1){
            printf("%c To %c\n",yl,mb);
            return;
        }
        hnt(n-1,yl,mb,fz);
        printf("%c To %c\n",yl,mb);
        hnt(n-1,fz,yl,mb);
    }
    signed main(){
        scanf("%lld",&n);
        hnt(n,'A','B','C');
        return 0;
    }
    

    信息

    ID
    225
    时间
    1000ms
    内存
    16MiB
    难度
    3
    标签
    (无)
    递交数
    140
    已通过
    78
    上传者