爬楼梯问题算法

版权声明:[email protected] https://blog.csdn.net/qq_271334644/article/details/84837588

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

注意:给定 n 是一个正整数。

首先分析这道题

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int climbStairs(int n) {
	if (n == 1 || n == 2 ) {
		return n;
	}
	int  n1 = 1; 
	int  n2 = 2; 
	int  add = 0;
	for (int i = 3; i <=n; ++i) {
		add = n1 + n2;
		n1 = n2;
		n2 = add;
	}
	return add;
}
int main() {
	int x = 0;
	scanf("%d", &x);
	printf("%d", climbStairs(x));

}

猜你喜欢

转载自blog.csdn.net/qq_271334644/article/details/84837588