走楼梯

简介: 楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。编一个程序,计算共有多少种不同的走法。

走楼梯

题目描述

楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。
编一个程序,计算共有多少种不同的走法。

输入描述

一个数字,楼梯数。

输出描述

输出走的方式总数。

样例输入 1

4

样例输出 1

5

代码

递归

#include<stdio.h>

int step(int n){
    if(n == 1 || n == 2){
        return n;
    }else{
        return step(n-1) + step(n-2);
    }
}

int main(){
    int n;
    scanf("%d",&n);
    printf("%d",step(n));
    return 0;
}

这题没多少印象,但是印象里递归好像有测试点过不去,会超时,再补一个动态规划的题解。

动态规划

#include<stdio.h>


int main(){
    int n;
    scanf("%d",&n);
    int res[n+1];
    res[0] = 0;
    res[1] = 1;
    res[2] = 2;
    if(n<=3)
    {
        printf("%d",n);
        return 0;
    }
    for(int i=3;i<=n;i++)
    {
        res[i]=res[i-1]+res[i-2];
    }
    printf("%d",res[n]);
    return 0;
}
相关文章
洛谷 P1063 能量项链
题目描述 在Mars星球上,每个Mars人都随身佩带着一串能量项链。在项链上有N颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。
984 0
|
Python
动态规划法(七)鸡蛋掉落问题(二)
  上次我们讲到,我们的主人公丁丁由于用动态规划法解决了鸡蛋掉落问题(egg dropping problem)而获得了当地科学家的赏识。
2093 0
牛顿的八字养生经
牛顿活到85岁,是科学家中的长寿老人了。他一生没有患过大病,也从不戴眼镜,只掉了一颗牙齿,临终仍头发乌青,这与他一生注重养生很有关系,他的八字养生法值得我们借鉴。     思考    牛顿从学龄前开始就爱思考,并动手制作各种令大人吃惊的小玩意儿,这种爱好一直坚持到晚年。
1252 0
1312:【例3.4】昆虫繁殖
1312:【例3.4】昆虫繁殖
108 1
|
人工智能 BI
昆虫繁殖
【问题描述】 科学家在热带森林中发现了一种特殊的昆虫,这种昆虫的繁殖能力很强。 每对成虫过x个月产y对卵,每对卵要过两个月长成成虫。假设每个成虫不死,第一个月只有一对成虫,且卵长成成虫后的第一个月不产卵(过X个月产卵)。 问过Z个月以后,共有成虫多少对? 0=z; 7 for(i=1;i
2057 0
A2234 结果填空:青蛙爬井
A2234 结果填空:青蛙爬井
713 0
A2234 结果填空:青蛙爬井
喜水青蛙
总是喜欢在水里嬉戏的青蛙,某天要过河拜访一位朋友。 已知河道中长满了带刺的不知名生物,能通过的路只有一条直线,长度为L。 直线上随机分布着m块石头。青蛙的最小跳跃距离是s,最大跳跃距离是t。 青蛙想要尽可能的少踩石头,那么它通过河道最少会踩到多少石头?
|
索引
每日一题——山羊拉丁文
每日一题——山羊拉丁文
129 0
每日一题——山羊拉丁文
|
算法
洗纸牌算法
import java.util.Random; class Card { int Suit; //花色 char Number; //牌数 } public class PokeShow { static Card[] OneCard=new Card[52]; //保存每张扑克的花色、数字 static void Show
1431 0
|
算法
算法:奶牛慢跑
题目: 奶牛们又出去锻炼蹄子去了! 有 N 头奶牛在无限长的单行道上慢跑。 每头奶牛在跑道上开始奔跑的位置都不相同,一些奶牛的奔跑速度也可能不同。
134 0

热门文章

最新文章

相关实验场景

更多