洛谷OJ - P1192 - 台阶问题(递推)
- 题目描述
-
有N级的台阶,你一开始在底部,每次可以向上迈最多K级台阶(最少1级),问到达第N级台阶有多少种不同方式。
- 输入
-
输入文件的仅包含两个正整数N,K。
- 输出
- 输入文件stair.out仅包括1个正整数,为不同方式数,由于答案可能很大,你需要输出mod 100003后的结果。
- 样例输入
-
5 2
- 样例输出
-
8
- 说明
-
对于20%的数据,有N ≤ 10, K ≤ 3;
-
对于40%的数据,有N ≤ 1000;
-
对于100%的数据,有N ≤ 100000,K ≤ 100。
- 思路
-
假设要求到达100级楼梯的方案数,并且每次能走不超过5级,
-
那么到达100级的方案数 = 达到99级的方案数+到达98级的方案数+到达97级的方案数+到达96级的方案数+到达95级的方案数。
-
那么我们可以通过递归求出到达第N级的方案数。dp[i] = dp[j](j<=K&&j>=1);
- 题目代码
#include <cstdio>
#include <iostream>
#include <map>
#include <set>
#include <vector>
#include <stack>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
#define LL long long
#define INF 99999999
#define MOD 100003
int n, k;
int dp[100005];
int main(){scanf("%d%d",&n,&k);dp[0] = 1;for(int i = 1; i <= n; i++){for(int j = 1; j <= k && j <=i; j++){dp[i] = (dp[i]%MOD + dp[i-j]%MOD)%MOD;}}printf("%d\n",dp[n]);return 0;
}
洛谷OJ - P1192 - 台阶问题(递推)相关推荐
- 洛谷 1057——传球游戏(递推与递归二分)
题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同 ...
- 洛谷P5110:块速递推(特征根方程、光速幂)
解析 去你的搬砖生成函数,特征根太香了. 一开始我是用生成函数解的,和特征根相比有亿点点搬砖- 但是这个东西原理似乎使用一些神奇的等比差分,有些玄学,生成函数较易理解. 背下来背下来! 就以本题为情境 ...
- 洛谷【算法1-4】递推与递归
P1255 数楼梯 对于 100% 的数据,1≤N≤5000. 高精度斐波那契 #include <iostream> using namespace std;const int N = ...
- #洛谷oj:P1525 [NOIP2010 提高组] 关押罪犯
洛谷oj:P1525 [NOIP2010 提高组] 关押罪犯 #题目描述 #一看很明显是贪心算法 加排序 因为 这个中间最大值的那一对肯定是不会在一起的 从大到小来看 所有点对都尽量不要在一个监狱 # ...
- 洛谷oj题单【入门2】分支结构-入门难度(Java)
洛谷oj题单[入门2]分支结构-入门难度(Java) 来源:https://www.luogu.com.cn/training/101#problems P5709 [深基2.习6]Apples Pr ...
- 洛谷OJ 入门与面试 B2001-B2148 题解
洛谷OJ 入门与面试 B2001-B2148 链接:https://pan.baidu.com/s/1cMRv6SBjL_sehYj7oM8gkw 提取码:tel3 B2001 入门测试题目 #inc ...
- 剑指Offer #08 跳台阶(递推)
题目来源:牛客网-剑指Offer专题 题目地址:跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 题目解析 这是 ...
- 洛谷OJ上的A+B花(zhuang)式(bi)解法
转眼间快到了8月,一想自己都毕业好久了,很怀念曾经在各大OJ上刷题的时光,今天无意在一个算法群里看到最近有个叫洛谷的oj网站貌似蛮火的,于是注册了一个下进去看一看,顺手打开了A+B problem,然 ...
- python跳台阶_递推典型算法:猴子爬山,跳台阶,爬楼梯(牛客网)、魔法深渊(快手)----Python、Java...
递推算法的基本思想是把一个复杂的.庞大的计算过程转化为简单过程的多次重复,其首要问题是得到相邻的数据项之间的关系,即递推关系.以猴子爬山为例. 1.问题的提出 一个顽猴在一座有30级太假的小山上爬山活 ...
- 【洛谷OJ C++】洛谷题单100 入门1顺序结构 题解及学习笔记
洛谷平台题单100链接:https://www.luogu.com.cn/training/100#problems 目录 学习笔记: P1001 A+B Problem P1000 超级玛丽游戏 P ...
最新文章
- java 十二星座数据下载_十二星座
- [导入]几种流行的AJAX框架jQuery,Mootools,Dojo,Ext JS的对比
- IE11 统治浏览器市场 Chrome 终超 Firefox
- 纯干货:CMOS图像传感器产业趋势和主要厂商
- Linux下防火墙开放端口
- voc定位数据xml转coco数据集格式json
- appium的三种等待方式 (还没实践过,记录在此)
- Surface Pro电磁笔故障
- Win10 + CUDA10.1+pytorch手动安装
- GitHub 在 “tar” 和 npm CLI 中发现7个高危的代码执行漏洞
- 网络工程 IP地址与子网掩码
- android plot,androidplot行不显示
- 08.electron-(渲染进程间的通信)
- mysql queries 很大,mysql优化通常使用的几种方法
- python生日快乐代码简单_Python编程代码:当你的亲人朋友生日时,给他运行这个程序,生日快乐弹窗!...
- 利用js,HTML,css实现一个简单的指针时钟
- 春分时节,迎一场春暖花开
- NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE-论文翻译
- 使用者多注意! 多件恶意软件潜入Google Play商店
- 光时域反射计行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)