2046骨牌铺方格

看图,添加一个方格之后,给后面的排序多了一次方格横着放的机会

所以fn=f(n-1)+f(n-2);

f(n-1)同样适用于fn,因为无论怎样都可以加一个竖着的,加多一格提供了一次f(n-2)与两根横的拼放

 

 

#include<stdio.h>

__int64 d[50];
int main()
{
 d[0]=1;
 d[1]=2;
 for(int i=2;i<50;i++)
 {
  d[i]=d[i-1]+d[i-2];
 }
 int n;
 while((scanf("%d",&n))!=EOF)
 {
  printf("%I64d\n",d[n-1]);
 }
 getchar();
 return 0;
}

posted @ 2012-02-08 17:14  nba76ers  阅读(390)  评论(0)    收藏  举报