程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Climbing Stairs,climbingstairs

Climbing Stairs,climbingstairs

編輯:關於C語言

Climbing Stairs,climbingstairs


You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

用遞歸到n = 44 時 會超時 根據菲波那切數列進行計算  n階梯子爬法是n-1 和 n-2 階梯子的總和

 1 int climbStairs(int n) {
 2     int a = 1;
 3     int b = 2;
 4     int i,c;
 5     if(1 == n)
 6         return 1;
 7     if(2 == n)
 8         return 2;
 9     for(i = 2; i < n; i++)
10     {
11         c = a + b;
12         a = b;
13         b = c;
14     }
15     return c;
16 }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved