递推题目,由于只有一种瓷砖,1*2规格的,所以一块2*2的面积上只能有2种摆放方式,然后就跟上台阶那个差不多,上一步或者上两部。
就是f[n]=f[n-1]+f[n-2];
另外注意__int64的问题。
#include <stdio.h> int main(){ __int64 num[55]; int i,n; num[1]=1;num[2]=2;num[3]=3; for(i=4;i<=50;++i){ num[i]=num[i-1]+num[i-2]; } while(~scanf("%d",&n)){ printf("%I64d ",num[n]); } return 0; }