当前位置: 首页 > news >正文

递推经典例题 - 爬楼梯

一、题目阅读

题目描述

一段楼梯有n级台阶。你每次可以跨一个、两个或者三个台阶。
请问走上n级台阶有几种方案?答案对998244353取模。

输入格式

一行一个数n。

输出格式

一行一个数,表示方案数。

样例

Input 1

3

Output 1

4

样例解释

1 + 1 + 1 = 3
1 + 2 = 3
2 + 1 = 3
3 = 3

数据范围

n≤1000n≤1000

二、核心思路

走到第i级楼梯,可以从第i-1级楼梯、第i-2级楼梯、i-3级楼梯走来。

得出公式:

dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3]

三、题解

#include <bits/stdc++.h>
using namespace std;int n, a[1005] = {0, 1, 2, 4};int main() {cin >> n;for (int i = 4; i <= n; i++)a[i] = ((a[i - 1] + a[i - 2]) % 998244353 + a[i - 3]) % 998244353;cout << a[n] << endl;return 0;
}

题目来自xinyoudui.com。


http://www.mrgr.cn/news/69355.html

相关文章:

  • MySQL【五】
  • 动力商城-03 Idea集成apifox Mybatis-Plus字段策略
  • 物料数据对接:轻易云助力聚水潭与金蝶云星空集成方案
  • VBA学习笔记:基础知识
  • Redis HyperLogLog
  • macOS 设置固定IP
  • 大模型AWQ量化Qwen模型和推理实战教程
  • Linux:调试器 gdb/cgdb 的使用
  • VMware中的重要日志文件 vobd.log 学习总结
  • C#核心(9)静态类和静态构造函数
  • 知识图谱是如何通过数据集构建的,比如通过在MSCOCO和Flickr30k数据集和Visual Genome数据集
  • MySQL性能测试方案设计
  • 万字长文解读深度学习——循环神经网络RNN、LSTM、GRU、Bi-RNN
  • Python数据预处理
  • 职场中如何向下属表达自己的观点
  • 华为私有接口类型hybrid
  • 医学可视化之热力图
  • C++接口类, 抽象类和实体类简述
  • 【C++】详解RAII思想与智能指针
  • 基于大语言模型的规划
  • 网站开发-苍穹外卖-day3:苍穹外卖和瑞吉外卖哪个更好???
  • UE5 HLSL 学习笔记
  • 111 - Lecture 8
  • 【MySQL场景题:如何保障传入id顺序与查询结果id顺序一致】---项目积累
  • A20红色革命文物征集管理系统
  • 【核心变量】上市公司企业战略激进度数据 (2004-2023年)