递归递推D-汉诺塔游戏

来源:互联网 发布:四轴叶轮加工编程方法 编辑:程序博客网 时间:2024/06/15 07:53

1、题意:求n个盘子在汉诺塔游戏中若放错步骤,将会产生多少系列;

2、思路:通过了解汉诺塔游戏,发现只是规律,其系列为盘子数的3次方;

3、感想:此题较为简单,了解了汉诺塔游戏,只需事先求出范围内的盘子数对应的系列数并储存起来,防止超时即可;

4、代码:#include<iostream>
using namespace std;
int main()
{
    long long a[30],n,i,j;
    a[0]=1;
    for(i=1;i<30;i++)
    a[i]=a[i-1]*3;
    cin>>n;
    for(i=1;i<=n;i++)
    {cin>>j;
    cout<<a[j]<<endl;}
}

0 0
原创粉丝点击