第三届蓝桥杯省赛---第39级台阶
生活随笔
收集整理的這篇文章主要介紹了
第三届蓝桥杯省赛---第39级台阶
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第39級臺階
小明剛剛看完電影《第39級臺階》,離開電影院的時候,他數了數禮堂前的臺階數,恰好是39級!
站在臺階前,他突然又想著一個問題:
如果我每一步只能邁上1個或2個臺階。先邁左腳,然后左右交替,最后一步是邁右腳,也就是說一共要走偶數步。那么,上完39級臺階,有多少種不同的上法呢?
請你利用計算機的優勢,幫助小明尋找答案。
分析:數據很小,直接用遞歸做就可以(每次走一步或者兩步)。。。
1 #include<iostream> 2 using namespace std; 3 4 int cnt=0; 5 6 void f(int stair,int step){ 7 /*stair代表剩余的步數,step代表走了幾步*/ 8 if(stair<0) return ; 9 if(stair==0){/*如果沒有步數了,并且符合題意,走了偶數步,則cnt++*/ 10 if(step%2==0){ 11 cnt++; 12 } 13 return ; 14 } 15 f(stair-1,step+1);//接下來遞歸走了一步 16 f(stair-2,step+1);//接下來遞歸走了兩步 17 } 18 19 int main(){ 20 f(39,0); 21 cout<<cnt<<endl; 22 return 0; 23 }?說明一下stair<0情況,當最后只剩一個臺階的時候,但是小明想要跨兩步的時候,這樣是不可能的,也就是說他只能跨一步,兩步是不可能出現的,因此也不可能是符合條件的走法。。。
轉載于:https://www.cnblogs.com/Bravewtz/p/10427520.html
總結
以上是生活随笔為你收集整理的第三届蓝桥杯省赛---第39级台阶的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么设置手机停机状态(华为怎么设置手机停
- 下一篇: 超便携笔记本小电脑(超便携笔记本小电脑哪