剑指offer-跳台阶与变态跳台阶

3.跳台阶与变态跳台阶

题目内容:

跳台阶:

变态跳台阶:

代码及思路:

跳台阶的思路与前一题斐波那契数列求解的方法相同,再次不再赘述。代码可以参照斐波那契数列的求解代码。

对于变态跳台阶问题

#include<iostream>
using namespace std;
class solution
{
public:
	int jumpFloorII(int n)
	{
		//与普通跳台阶不同的是它可以跳上n级,因此利用数学归纳法可以得到变态跳台阶问题
		//n个台阶共有2^(n-1)种跳法。
		if (n < 2)
			return n;
		int total = 1;
		for (int i = 2; i <= n; i++)
		{
			total *= 2;
		}
		return total;

	 }
};
void main()
{
	int num;
	int result;
	cin >> num;
	solution* object = new solution();
	result = object->jumpFloorII(num);
	cout << result << endl;
}

猜你喜欢

转载自blog.csdn.net/larklili/article/details/89843253