递归递推练习——D

来源:互联网 发布:肌研洗面奶怎么样 知乎 编辑:程序博客网 时间:2024/06/07 19:02

题目要求:

n个盘子的汉诺塔最少移动次数为2的n次方减1,在移动过程中会产生2的n次方个系列。错误移动会产生更多的系列数,计算所有会产生的系列种数。

题目思路:1个盘子产生3种系列,2个盘子产生9种系列,3个盘子产生27种系列。。。。。由此推出n个盘子产生3的n次方种系列。

细节处理:  运用pow函数可以简化程序。


2345678910111213
#include<bits/stdc++.h>using namespace std;int main(){    int n,i,k;    long long t;    cin>>n;    for(i=0;i<n;i++)       {  cin>>k;    t=pow(3,k);    cout<<t<<endl;}    return 0;}


2345678910111213
#include<bits/stdc++.h>using namespace std;int main(){    int n,i,k;    long long t;    cin>>n;    for(i=0;i<n;i++)       {  cin>>k;    t=pow(3,k);    cout<<t<<endl;}    return 0;}
0 0
原创粉丝点击