LeetCode70 Climbing Stairs

来源:互联网 发布:一元微信提现赚钱软件 编辑:程序博客网 时间:2024/05/16 15:11

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

Note: Given n will be a positive integer.

解答:

public class Solution {    public int climbStairs(int n) {      if(n==0||n==1||n==2) return n;      int[] m=new int[n];      m[0]=1;      m[1]=2;      for(int i=2;i<n;i++){          m[i]=m[i-1]+m[i-2];      }      return m[n-1];      }}

一次一步或一次两步,那么第M阶可能是由M-1或M-2爬上来的。

原创粉丝点击