這篇文章就給予剛剛學習動態規劃入門,話不多說我們就直接上題目了
假設你正在爬樓梯。需要 n 階你才能到達樓頂。
每次你可以爬 1 或 2 個台階。你有多少不同的爬樓方式可以爬到樓頂呢?
這裡先給出乙個輸入輸出的示例:
n=3 則有3種爬法:(1,1,1),(2,1),(1,2)
那麼估計你應該看懂了,這裡面也要排序咯。
看到這你思考下應該如何去解決這個問題。
那麼不如逆向思考一下,如果我到達樓頂(n代表頂層),最後乙個步驟是選擇走兩步呢,還是走一步呢。
這就給了我們兩個方式去完成最後乙個選擇去到達樓頂。
那我們就先說最後走2個台階到達樓頂,那這種方式到達樓頂一共有多少種方法?
就等於dp[n-2](dp[n-2]代表到達n-2層的方式數量)。
那麼如果最後一步驟走1個台階,就有d[n-1]種方法
不要害怕修剪
每逢春季,即使是一向奉公守法的市民,也會手執利器來剪割和砍伐,因為這是修剪植物的最佳時候。修剪工作往往被人誤解,因為對毫無經驗的人來說,這些剪割砍伐,看似是很殘忍的事情。我的家占地五分一畝,可說是不大也不小,我們在這裡曾經種植過十一棵果樹。還記得在我們度過第乙個種植季節後,一位有經驗的園丁自薦幫助我...
不要害怕問題。
出現問題才是鍛鍊乙個人能力的時候,所以不要怕,有啥不懂問度娘。步驟如下 右擊桌面 個性化 主題 桌面圖示設計 將計算機打上勾 就可以啦!可是當我進行到主題時,我又發現我的電腦windows沒有啟用,於是又去找度娘,ps 這裡一定要找與自己的版本一模一樣的,在翻閱中 我發現了乙個既簡單又高效的方法 w...
24 不要害怕搞砸什麼
每個有產業經驗的人都肯定在 庫最好情況下也不穩定的專案裡面工作過。這個系統構建的很差,改一處東西總是意味著會弄壞另乙個不相關的功能。每當增加乙個模組,編碼者的目標就是做盡可能少的修改,而且每次發布時都要屏住呼吸。這個軟體就同在乙個摩天大樓中用工字鋼玩堆積木一樣,只會通向災難。做乙個改變會讓人如此神經...