問題描述編程
有一長度爲N(1<=N<=10)的地板,給定兩種不一樣瓷磚:一種長度爲1,另外一種長度爲2,數目不限。要將這個長度爲N的地板鋪滿,一共有多少種不一樣的鋪法? 例如,長度爲4的地面一共有以下5種鋪法: 4=1+1+1+1 4=2+1+1 4=1+2+1 4=1+1+2 4=2+2 編程用遞歸的方法求解上述問題。ide
輸入格式spa
只有一個數N,表明地板的長度orm
輸出格式遞歸
輸出一個數,表明全部不一樣的瓷磚鋪放方法的總數it
樣例輸入io
4class
樣例輸出方法
5margin
#include<stdio.h> int j=0; int n; int fun(int n){ if(n<0)return 0; if(n==0) {j++;return 0;} fun(n-1) ; fun(n-2); } int main() { scanf("%d",&n); fun(n); printf("%d\n",j); return 0; }