132 Sample Output132 Authorlcy Source遞推求解專題練習(For Beginner)
方格是橫向延長的,n=3時,當第三列骨牌是豎放的,放法總數是n=2時的放法總數,當第三列和第二列的骨牌是橫放的,放法總數是n=1時的放法總數……此時心里有點遞歸的想法了,再看n=4的情況,也是上述思想,故可以得出,n列放法總數f(n)=f(n-1)+f(n-2)這里放法總數所用數據類型不能用int,不能 ac這里我是用_int64,就AC了#include<stdio.h>_int64 a[100];_int64 f(int n){if(a[n]>0) return a[n];if(n==1)return 1;if(n==2)return 2;if(n>2)a[n]=f(n-1)+f(n-2);return a[n];}int main(){int n;while(~scanf("%d",&n))printf("%I64d/n",f(n));}
新聞熱點
疑難解答