Supine-Y 2023-12-08 00:20 采纳率: 69.4%
浏览 8
问题最晚将于12月16日00:00点结题

学习C++过程中遇到的问题

img


求解,没有什么思路,我写的代码感觉很麻烦,请问有没有简便的,求指点

  • 写回答

5条回答 默认 最新

  • threenewbee 2023-12-08 00:25
    关注

    这就是汉诺塔问题,用递归

    #include <stdio.h>
    
    int hanoi(int n) 
    {
        if (n == 1) 
            return 1;
        else 
            return 2 * hanoi(n - 1) + 1;
    }
    
    int main() 
    {
        int n;
        scanf("%d", &n);
        int moves = hanoi(n);
        printf("%d", moves);
        return 0;
    }
    
    评论

报告相同问题?

问题事件

  • 已采纳回答 12月8日
  • 赞助了问题酬金15元 12月8日
  • 创建了问题 12月8日