有個小孩正在上樓梯,樓梯有n階台階,小孩一次可以上1階、2階、3階。請實現乙個方法,計算小孩有多少種上樓的方式。為了防止溢位,請將結果mod 1000000007
給定乙個正整數int n,請返回乙個數,代表上樓的方式數。保證n小於等於100000。
a[i]=((a[i-
1
]+a[i-
2
])%
1000000007
+a[i-
3
])%
1000000007
的解釋:
取模運算有這樣乙個性質:(a+b)%c = ((a%c)+(b%c))%c
所以(a[i-
1
]+a[i-
2
])%
1000000007
就相當於(a[i-
1
]%x+a[i-
2
]%x)%x 用x代替
1000000007
這樣就使得a[i-
1
]、a[i-
2
]、a[i-
1
]+a[i-
2
]都沒有溢位,之後再與a[i-
3
]相加之後取模,使得全部結果沒有溢位。
%12ms 787k
class goupstairs
};
測試樣例:
%12ms 484k
class goupstairs
return ft ;
} }};
上樓梯問題,模餘防止溢位
題目 有個小孩正在上樓梯,樓梯有n階台階,小孩一次可以上1階 2階 3階。請實現乙個方法,計算小孩有多少種上樓的方式。為了防止溢位,請將結果mod 1000000007 給定乙個正整數int n,請返回乙個數,代表上樓的方式數。保證n小於等於100000。測試樣例 1返回 1 class goups...
上樓梯問題 棧
這樣說可能有些費解,尤其對於初學者來說,接觸這道題的時間可能還未觸及資料結構的層次,或者有所耳聞,但是卻沒有沒法有足夠的模擬和抽象化的能力理解棧是怎樣執行的,那麼我們就從這道題開始,盡量讓你用一道題就掌握棧這個資料結構 有n級的台階,你一開始在底部,每次可以向上邁最多k級台階 最少1級 問到達第n級...
N階樓梯上樓問題
n階樓梯上樓問題 一次可以走兩階或一階,問有多少種上樓方式。要求採用非遞迴 輸入包括乙個整數n,1 n 90 可能有多組測試資料,對於每組資料,輸出當樓梯階數是n時的上樓方式個數。示例1 4 5 此題考查的是斐波那契數列。對於n階的樓梯,設其上樓方法有f n 種方法。上到n階,只能從n 1階上一階,...