编程初学者入门训练-小乐乐走台阶
2020-06-24 09:23
162 查看
题目描述
小乐乐上课需要走n阶台阶,因为他腿比较长,所以每次可以选择走一阶或者走两阶,那么他一共有多少种走法?
输入描述
输入包含一个整数n (1 ≤ n ≤ 30)
输出描述
输出一个整数,即小乐乐可以走的方法数。
示例1
输入
2
输出
2
示例2
输入
10
输出
89
代码实现
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; public class Main{ public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(bf.readLine()); int[] count = new int[n+2]; count[n] = 1; for(int i=n-1;i>=0;i--){ count[i] = count[i+1]+count[i+2]; } System.out.println(count[0]); } }
解题思路
n=1时,走法:1,共计1种;
n=2时,走法:1+1或2,共计2种;
n=3时,走法:1+1+1或1+2或2+1,共计3种;
即当需要走n阶台阶时,只需要在走n-1阶台阶后再走1阶,或者在走n-2阶台阶后再走2阶;也就是说,有n阶台阶时,走法满足以下关系:f(n)=f(n-1)+f(n-2)。
相关文章推荐
- 编程初学者入门训练-小乐乐与字符串
- 编程初学者入门训练-小乐乐排电梯
- 编程初学者入门训练-小乐乐定闹钟
- 编程初学者入门训练-小乐乐求和
- 编程初学者入门训练-小乐乐与进制转换
- 编程初学者入门训练-小乐乐与欧几里得
- 编程初学者入门训练-空心正方形图案
- 编程初学者入门训练-争夺前五名
- 编程初学者入门训练-KiKi和酸奶
- 编程初学者入门训练-班级成绩输入输出
- 编程初学者入门训练-序列中整数去重
- 编程初学者入门训练-最高身高
- 编程初学者入门训练-X形图案
- 编程初学者入门训练-最高分与最低分之差
- 编程初学者入门训练-包含数字9的数
- 编程初学者入门训练-序列中删除指定数字
- 编程初学者入门训练-N个数之和
- 编程初学者入门训练-逆序输出
- 编程初学者入门训练-大小写转换
- 编程初学者入门训练-上三角矩阵判定