試験問題アルゴリズム訓練タイル舗装javaブルーブリッジカップ

3673 ワード

質問には、長さN(1<=N<=10)の床が記載されており、2つの異なるタイルが与えられています.1つの長さは1で、もう1つの長さは2で、数は制限されません.この長さNの床を敷き詰めるには、全部で何種類の異なる敷き方がありますか?例えば,長さが4の地面には,4=1+1+1+14=2+1+14=1+2+14=1+1+2 4=2+2プログラミングが再帰的な方法で上記の問題を解く5つの舗装法がある.入力フォーマットは1つの数Nのみで、床の長さ出力フォーマットを表して1つの数を出力し、すべての異なるタイル舗装方法の総数サンプル入力4サンプル出力5を表します.
分析:フィボナッチ额数列!!!
import java.util.Scanner;

public class llq1{
	public static void main(String[] args) {
		Scanner s=new Scanner(System.in);
		int n=s.nextInt();
		System.out.print(f(n));;
	}
	static int f(int nn) {
		if(nn==1)
			return 1;
		else if(nn==2)
			return 2;
		else
			return f(nn-1)+f(nn-2);
	}
}