汉诺塔II

时间:2022-07-24
本文章向大家介绍汉诺塔II,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

思路:找规律,你首先要明白n柱汉诺塔问题,然后进行列数找规律求解。

//开始加两个2,然后3个4,4个8,5个16...
//1 3 5 9 13 17 25 33 41 49 65 81

#include<stdio.h>
#include<math.h>
int main()
{
	int n;
	int i,j;
	int a[100000];
	a[0]=1;
	int k=0;
	int sum=1;
	for(i=2;i<=64;i++)
	{
		for(j=1;j<=i;j++)
		{
			sum=sum+pow(2.0,i-1);
			a[++k]=sum;
		}
	}
	while(scanf("%d",&n)!=EOF)
	{
		printf("%dn",a[n-1]);
	}
}