题目:假如你正在爬一个梯子,梯子有n层,每次可以爬1层或2层,求有多少种不同的爬梯子方式。
输入:2 输出:5
输入:5 输出:8
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int sum = in.nextInt();
int result = getMethod(sum);
System.out.println(result);
}
private static int getMethod(int sum) {
int result[] = new int[sum+1];
if(result[sum]>0)
return result[sum];
if(sum==0||sum==1){
result[sum] = 1;
return 1;
}
else{
int res = getMethod(sum-1) + getMethod(sum-2);
result[sum] = res;
return res;
}
}
}