题目描述
1.有三根杆子A,B,C。A杆上有若干碟子
2.每次移动一块碟子,小的只能叠在大的上面
3.把所有碟子从A杆全部移到C杆上
输入
3
输出
7
样例输入
4
样例输出
15
参考代码
#include<stdio.h>
#include<stdlib.h>
int time=0;
void compute(int n,int x,int y,int z)
{
if(n==1)
time++; else
{
compute(n-1,x,z,y);
time++;
compute(n-1,y,x,z);
}
}
int main()
{
int n,x=1,y=2,z=3;
scanf("%d",&n);
compute(n,x,y,z);
printf("%d",time);
return 0;
}
解析
暂无