—————–>>>>>>
題目**
<<<<<<———————
題目描述
有個小孩正在上樓梯,樓梯有n階台階,小孩一次可以上1階、2階、3階。請實現乙個方法,計算小孩有多少種上樓的方式。為了防止溢位,請將結果mod 1000000007
給定乙個正整數int n,請返回乙個數,代表上樓的方式數。保證n小於等於100000。
測試樣例:
返回:1
解題思路:這題用的是動態規劃的解法。由題可知,到目標階梯的方法共有三種:
1.由n-1到達,走了一步。
2.由n-2到達,走了兩步。
3.由n-3到達,走了三步。
那麼,很明顯,這三種到達目標階梯的總和就是到達目標階梯的所有可能性。
直接貼**。
public
static
intcountways
(int
n) ;//代表 0 1 2 個階梯的可能性
if(n < 3
) int
i = 3
; for
(; i <= n ; i++)
a[i % 3
] = x;
}return
a[(i - 1
) % 3
]; }
public
static
void
main
(string args)
上樓梯 動態規劃
題目 題目描述 有個小孩正在上樓梯,樓梯有n階台階,小孩一次可以上1階 2階 3階。請實現乙個方法,計算小孩有多少種上樓的方式。為了防止溢位,請將結果mod 1000000007 給定乙個正整數int n,請返回乙個數,代表上樓的方式數。保證n小於等於100000。測試樣例 返回 1 解題思路 這題...
動態規劃 上樓梯高階版
d 上樓梯 檢視 提交 統計 提問 總時間限制 1000ms 記憶體限制 128kb 描述 小s在玩乙個叫上樓梯的遊戲。樓梯一共有n層台階。因為腿長的限制,小s每次最多只能上k層台階。小s是乙個迷信的人,所以他不希望自己某一步走的步數的數字裡有 4 比如4,14,44都含有數字 4 現在,小s想要知...
上樓梯問題 棧
這樣說可能有些費解,尤其對於初學者來說,接觸這道題的時間可能還未觸及資料結構的層次,或者有所耳聞,但是卻沒有沒法有足夠的模擬和抽象化的能力理解棧是怎樣執行的,那麼我們就從這道題開始,盡量讓你用一道題就掌握棧這個資料結構 有n級的台階,你一開始在底部,每次可以向上邁最多k級台階 最少1級 問到達第n級...