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

网站制作技术支持南昌房信网官网

网站制作技术支持,南昌房信网官网,网站建设客户在哪里找,做推广的网站带宽需要多少钱dp经典问题:爬楼梯 爬楼梯 三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。 Step1: 识别问题 这…

dp经典问题:爬楼梯


爬楼梯

三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。

Step1: 识别问题

这个问题要求我们计算 小孩上到第n阶台阶有多少种方法

Step2:定义状态

d p [ i ] < − 小孩上到第 n 阶台阶的方法数量,定义为第 i 个状态 dp[i] <- 小孩上到第n阶台阶的方法数量,定义为 第 i 个状态 dp[i]<小孩上到第n阶台阶的方法数量,定义为第i个状态

Step3:确定状态转移方程

这里 小孩每次可以上1阶,2阶或3阶 ,也就是说小孩可以从前1阶,2阶或者3阶上到当前台阶

也就是说当前状态由前三个状态决定

d p [ i ] = d p [ i − 1 ] + d p [ i − 2 ] + d p [ i − 3 ] dp[i]=dp[i-1]+dp[i-2]+dp[i-3] dp[i]=dp[i1]+dp[i2]+dp[i3]

Step4:确定初始状态和边界

d p [ 0 ] = 1 d p [ 1 ] = 1 d p [ 2 ] = 2 d p [ 3 ] = 4 dp[0]=1\\ dp[1]=1\\ dp[2]=2\\ dp[3]=4 dp[0]=1dp[1]=1dp[2]=2dp[3]=4

Step5:计算目标状态值

只需要从第四个状态开始自下而上的状态推导即可

代码

class Solution {
public:int waysToStep(int n) {if (n == 1) return 1;if (n == 2) return 2;if (n == 3) return 4;vector<int> dp(n + 1);dp[0] = 1;dp[1] = 1;dp[2] = 2;dp[3] = 4;const int mod = 1000000007;for (int i = 4; i <= n; ++i) {dp[i] = ((dp[i - 1] + dp[i - 2]) % mod + dp[i - 3]) % mod;}return dp[n];}
};
http://www.yayakq.cn/news/921778/

相关文章:

  • 免费 个人网站花瓣网免费素材图库官网
  • wdcp网站打不开做网站排名的公司
  • 网站注册便宜青建设厅官方网站海省
  • 做一家网站费用吗wordpress 阿里oss
  • 加强部门网站建设工作总结乐都营销型网站建设
  • 公司网站建设的工具延边州建设厅网站
  • 品牌官方网站建设网站建设费用是什么科目
  • 绿色国外网站电脑做网站端口映射
  • 广州建网站腾虎淘宝网(淘宝网)
  • 做导购型网站聊城网站建设:推广聊城博达
  • 网站建设视频讲解建设网站用什么软件
  • 苏州建设工程检测协会网站网站建设讠金手指 22
  • 免费做橙光封面的网站海南网站制作公司
  • 网站推广咋做的电商网站的相同点
  • 网站开发产权保护wordpress 整站转移
  • 网站建设jz518wordpress 文章输出
  • 网站空间价格猪八戒网logo设计
  • 网站备案链接地址游戏推广员是做什么的
  • 濮阳市城乡建设管理局网站php网站开发技术优点
  • 佛山网站哪家最专业网站在工信部备案如何做
  • 网站代码特效广告万户网站制作
  • ps学做翻页相册网站红色风格网站
  • 海南省建设培训网站报名培训机构专业
  • 网站建设公司如何挖掘客户哈尔滨的网站建设公司哪家好
  • 黄金网站大全免费2023网站内链检查
  • 徐汇网站开发培训代理服务器ip国外
  • 广州市建设工程档案馆网站咸阳个人兼职网站建设
  • 十大高端网站定制设计片头网站
  • 做网站的范本谷歌认证合作伙伴网站建设
  • 易企互联网站建设北京安卓app开发公司