【蓝桥杯2013年C/C++省赛真题】——39级台阶

这道题类似斐波那契数列或者是小青蛙跳台阶,只不过加了一个限制条件:迈的步数是偶数。
对于迈的步数是偶数,只需要在函数里添加一个Step的变量就可以了。
解析:对于每一级台阶,小明都面临着迈一步还是两步的抉择,迈出了一步或者两步,剩下的台阶就会少1级或者2级,所以会有f(n-1),f(n-2),当你迈出的级数等于39并且步数为偶数时,那么说明你这一系列下来的操作是可行的,于是计数器cnt++。如果不满足条件,例如你迈出的总级数超过了台阶(n<0)或者步数为奇数(Step%2==1)说明你之前一系列的操作是不行的,于是就return。
代码如下:
在这里插入图片描述
算法分析:这应该是 一道深度优先搜索的简单题,因为小明在面对每一级台阶都面临着两个选择,有39级台阶,所以时间复杂度为O(2的39次方)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值