大家好,我今天来水了!
1223 - 【入门】汉诺塔的移动次数
题目描述
汉诺塔的问题大家都已经很熟悉了,有三个柱子,每个柱子上有一些大小不一的金片,要把金片从A柱移动到C柱,可以借助B柱,请问n个金片的情况下,需要最少移动多少次?
输入
输入一个整数n代表金片的数量(n<=20)
输出
一个整数,代表n个金片的移动次数
样例
输入复制
3
输出复制
7
#include<bits/stdc++.h>
using namespace std;
int f(int n)
{
if(n!=1)
{
return f(n-1)*2+1;
}
else return 1;
}
int main()
{
int n;
cin>>n;
cout<<f(n)<<endl;
return 0;
}
古德拜!
记得三连哦!