示例 1:
示例 2:
package DynamicProgramming;
public class p70_ClimbingStairs {
public static void main(String[] args) {
int res = climbStairs(3);
System.out.println("res = " + res);
}
public static int climbStairs(int n) {
if (n <= 1) {
return n;
}
int[] dp = new int[n + 1];
dp[1] = 1;
dp[2] = 2;
for (int i = 3; i <= n; i++) {
dp[i] = dp[i - 1] + dp[i - 2];
}
return dp[n];
}
}
#include
#include
int climbStairs(int n)
{
if (n <= 1)
{
return n;
}
int* dp = (int*)malloc(sizeof(int) * (n + 1));
dp[1] = 1;
dp[2] = 2;
for (int i = 3; i <= n; i++)
{
dp[i] = dp[i - 1] + dp[i - 2];
}
return dp[n];
}
/*主函数省略*/
Java语言版

C语言版
