【順豐2018-09-17線上筆試】抓卡片
阿新 • • 發佈:2018-12-10
題目描述
其實可以看作斐波那契數列問題或者跳臺階問題。
C++程式碼
#include <iostream>
using namespace std;
class Solution {
public:
// 思路: 找規律,發現解法類似於斐波那契數列:1,2,3,5,8,13...
int jumpFloor(int number) {
if (number <= 0)
return -1;
int j_2 = 1;
int j_1 = 2;
int j = 0;
if (number == 1 || number == 2)
return number;
while (number >= 3){
j = j_2 + j_1;
j_2 = j_1;
j_1 = j;
number--;
}
return j;
}
};
int main()
{
Solution s;
int n;
cin >> n;
cout<<s.jumpFloor(n);
return 0;
}