题解 | #N阶楼梯上楼问题#

N阶楼梯上楼问题

https://www.nowcoder.com/practice/c978e3375b404d598f1808e4f89ac551

#include <stdio.h>

int main() {
    int N;
    while (scanf("%d", &N) == 1) {
        long long ways[N + 1]; // 使用 long long 类型存储上楼方式数,以避免溢出
        ways[0] = 1; // 到达第 0 阶的方式数为 1
        ways[1] = 1; // 到达第 1 阶的方式数为 1

        // 计算到达每一阶的上楼方式数
        for (int i = 2; i <= N; i++) {
            ways[i] = ways[i - 1] + ways[i - 2];
        }

        printf("%lld\n", ways[N]); // 打印到达第 N 阶的上楼方式数
    }
    return 0;
}

全部评论

相关推荐

2025-11-28 16:00
已编辑
武汉理工大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务