铺瓷砖

题目内容

用13的瓷砖铺320的地板有几种方式


代码

public class T {
    //循环法
    static int f1(int n)
    {
        if(n==1)
        {return 1;}
        if(n==2)
        {return 1;}
        if(n==3)
        {return 2;}
        int a=1;
        int b=1;
        int c=2;
        int d=0;
        for(int i=0;i<n-3;i++)
        {
            d=c+a;
            a=b;
            b=c;
            c=d;
        }
        return d;

    }
    //递归法
    static int f2(int n)
    {
        if(n==1)
        {return 1;}
        if(n==2)
        {return 1;}
        if(n==3)
        {return 2;}
        return f2(n-1)+f2(n-3);
    }
    public static void main(String[] args) {

        System.out.println(f1(20));//1278
        System.out.println(f2(20));//1278
    }
}