瓷砖铺放

/*有一长度为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
编程用递归的方法求解上述问题。
输入格式
只有一个数N,代表地板的长度
输出格式
输出一个数,代表所有不同的瓷砖铺放方法的总数
样例输入
4
样例输出
5
import java.util.Scanner;
public class Main2 {
static int n;
static int result=0;
static void get(int len){
    if(len==n)
        {result++;
        return ;
        }
    if(len>n)
        return;
    if(len+1<=n)
         get(len+1);
    if(len+2<=n)
         get(len+2);
    
}

public static void main(String[] args) {
    Scanner sc=new Scanner(System.in);
    n=sc.nextInt();
    int len=0;
    get(len);
    System.out.println(result);
    
    
}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值