P1192 台阶问题

1.问题

见题目

2.分析

  • 具有子问题特性,需分治(递归)解决
  • 类似Fibonacci数列问题
  • 建立适当的递推式即可
  • 需要在适当的地方运用数论的知识 [(a+b) mod n =((a mod n)+(b mod n)) mod n ]

3.代码

#include<iostream>
using namespace std;const int maxN = 100005;
typedef long long ll;
int k ;
ll f[maxN];//n级台阶需要迈的次数
int cal(int n){if(n==1 || n==0)return f[n];//可以选择迈1-k步 //注意i的取值范围,这个很关键 for(int i = 1;i<=k && i<=n;i++){      if(f[n-i]!=0)f[n] += f[n-i];elsef[n] = f[n] + cal(n-i);f[n] = f[n] % 100003;}return f[n];
}int main(){int n;cin >> n>> k;fill(f,f+maxN,0);f[0] = f[1] = 1;cal(n);cout << f[n] % 100003;
}

P1192 台阶问题相关推荐

  1. P1192 台阶问题(递推)

    https://www.luogu.org/problemnew/show/P1192 题目描述 有N级的台阶,你一开始在底部,每次可以向上迈最多K级台阶(最少11级),问到达第N级台阶有多少种不同方 ...

  2. 【暑期每日一题】洛谷(一)

    [暑期每日一题]洛谷 P1048 [NOIP2005 普及组] 采药 [暑期每日一题]洛谷 P1048 [NOIP2005 普及组] 采药_辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师.为 ...

  3. html如何设置四个链接,HTML基础(四)——设置超链接的样式示例

    ***设置超链接的样式示例 a:link超链接被点前状态 a:visited超链接点击后状态 a:hover悬停在超链接时 a:active点击超链接时 在定义这些状态时,有一个顺序l v h a 代 ...

  4. 台阶问题(洛谷P1192题题解,Java语言描述)

    题目要求 题目链接 分析 记得讲过的跳台阶问题吗?那个题限制一个或两个台阶,故可以使用递推式 f [ i ] = f [ i − 1 ] + f [ i

  5. 台阶问题(洛谷-P1192)

    题目描述 有 N 级的台阶,你一开始在底部,每次可以向上迈最多 K 级台阶(最少 1 级),问到达第 N 级台阶有多少种不同方式. 输入输出格式 输入格式: 两个正整数 N,K. 输出格式: 一个正整 ...

  6. 自制青蛙跳台阶小游戏~

    青蛙跳台阶小游戏 1.概念(concept)文档 楔子(Setting):千百年来,人们在贬低别人时,常用井底之蛙来描述那个人,但这却让青蛙不开心了,于是青蛙决定跳出井底,为自己讨一个公道. 玩法(G ...

  7. [递归]一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

    这题是用C写的~ 在牛客上半天找不着ACM模式,练习模式里只有核心代码模式 这样用C语言编译器就不能自定义函数啊,不鸡肋吗??? 解决方法:在核心代码模式下用C++编译器(反正C++完全兼容C的不是吗 ...

  8. 一个顽猴沿着一座小山的n级台阶向上跳,猴子上山一步可跳1级或3级,试求上山的n级台阶有多少种不同的爬法。...

    #include<stdio.h> void main(){int k,n;long f[1000];printf("请输入台阶总数:");scanf("%d ...

  9. 剑指offer:面试题10- II. 青蛙跳台阶问题

    题目:青蛙跳台阶问题 一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶.求该青蛙跳上一个 n 级的台阶总共有多少种跳法. 答案需要取模 1e9+7(1000000007),如计算初始结果为:10000 ...

  10. 递归和循环:跳台阶和变态跳台阶和矩形覆盖

    题目描述 跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 变态跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级--它 ...

最新文章

  1. 根本停不下来,原来学计算机可以这么有趣
  2. python根据列表形成字典。
  3. 数学建模太难,如何以Tableau可视化的方式打开?
  4. 最大似然估计Maximum-likelihood (ML) Estimation
  5. Wecoach陈隽永:如何打造一款完美的智能硬件App?
  6. CH - 0501 货仓选址(中位数)
  7. linux定时关机命令_win10电脑定时关机命令
  8. 【常见笔试面试算法题12续集三】动态规划算法案例分析3 LIS练习题(最长上升子序列)
  9. 2019全球程序员薪酬报告:软件开发比机器学习抢手!40岁后收入下滑
  10. 用Kickstart批量安装Linux系统、Kickstart安装,linux批量安装;Linux的Kickstart的 无人值守安装;linux pxe自动安装linux系统...
  11. Arnold for Cinema 4D for mac(C4D R26阿诺德渲染器)
  12. wangEditor + vue双向绑定(光标游走问题)
  13. unity播放360全景视频
  14. ITIL 4Foundation题目-6
  15. 记一次 【Unknown thread id: XXX】 的排查
  16. 理论力学---广义坐标和广义力
  17. 【iOS开发】---- 网站或技术论坛
  18. 观察者模式——应聘者和应聘公司的关系
  19. 【重磅干货】信息化方案合集下载!
  20. 电子邮件乱码产生的主要原因及几种解决方法

热门文章

  1. 迅捷路由虚拟服务器设置,迅捷 FWR310 无线路由器端口映射设置指南
  2. 六西格玛dfss_DFSS六西格玛设计的基本内容
  3. Java实现生产者消费者的PV操作信号量操作
  4. 软件测试人力面试题(含答案)
  5. 从单目视觉信息学习深度信息(一)
  6. 华硕笔记本BIOS设置禁用UEFI后使用U盘装系统方法
  7. 计算机流程图设计教程,流程图制作工具分享,在电脑上就可以画图
  8. android解析json数据格式,Android编程解析Json格式数据的方法
  9. 各种Normailization(BN,LN,IN,CIN,AdaIN,SPADE,SEAN)
  10. 利用C语言实现wol网络远程唤醒