刷题笔记(六)——走台阶

刷题笔记(六)——走台阶

题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

思路:同上一题。倒着思考,当青蛙跳到第n级台阶时,有两种可能:一是从n-1级台阶跳上来的,二是从n-2级台阶跳上来的。

所以一共的可能性=(n-1的情况)+(n-2的情况)

class Solution {
public:
    int jumpFloor(int number) {
         if(number==0)
            return 0;
        else if(number==1)
            return 1;
        else if(number==2)
            return 2;
        else
        {
            number--;
            int a[2]={1,2};
            while(number-1!=0)
            {
                int temp=a[1];
                a[1]=a[0]+a[1];
                a[0]=temp;
                number--;
            }
            return a[1];
        }
    }
};

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章