[LeetCode16]Climbing Stairs
来源:互联网 发布:kali和linux的关系 编辑:程序博客网 时间:2024/06/04 00:34
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?
DP. The transition function should be:
f(n) = f(n-1) + f(n-2) n>2;
or = 1 n=1
or = 2 n=2
Java
public int climbStairs(int n) { // IMPORTANT: Please reset any member data you declared, as // the same Solution instance will be reused for each test case. int f1 = 1;int f2 = 2;if(n == 1)return f1;if(n == 2)return f2;int fn = 0;for(int i = 3;i<=n;i++){fn = f1 + f2;f1 = f2;f2 = fn;}return fn; }
只需要结果,三个变量就够了,可以不用数组
c++
int climbStairs(int n) { if(n==0) return 0; if(n==1) return 1; if(n==2) return 2; int fn=0, fn_1 = 1,fn_2=2; for(int i=3;i<=n;i++){ fn = fn_2+fn_1; fn_1 = fn_2; fn_2 = fn; } return fn; }
0 0
- [LeetCode16]Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- Climbing Stairs
- cocos2d-x的声音控制
- jrtplib3.9.1 example3
- 《代码简洁之道》读书笔记之五:系统和迭进
- Android开源框架ImageLoader
- 国立清華大學 科學計算 張智星
- [LeetCode16]Climbing Stairs
- bzoj2761 [JLOI2011]不重复数字
- 浏览器兼容问题汇总
- android QQ登陆接入
- 《代码简洁之道》读书笔记之六:并发编程、逐步改进、注释
- C++Primer学习笔记《1》
- android 微博第三方登陆接入
- css和js的浏览器不兼容问题汇总
- Android Service与Activity之间通信的几种方式