动态规划训练15 [Monkey and Banana HDU - 1069 ]
生活随笔
收集整理的這篇文章主要介紹了
动态规划训练15 [Monkey and Banana HDU - 1069 ]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Monkey and Banana
? HDU - 1069?題意大致是將一個長方體通過旋轉,使得摞起來的建筑最高。但是必須滿足這么一個條件,那就是上面的長方體的底面一定要完全被下一個長方體的底面完全覆蓋,并且要有空位,就像樓梯那樣。
由于每一個長方體可以任意使用,而實際上,最多只能被用3次,即長方體的3個棱分別為高的情況下。
所以我們就可以針對每一個長方體生成3個不同的體位。然后把它加入數組里面去。這樣的話數組里面的長方體就只能被使用一次。
然后我們定義dp[i]代表的是以第i個結尾的塔的最大高度,那么狀態轉移就可以寫成:
dp[i] = max(d[[i],dp[j] + h[i]),其中i,j滿足第i個長方體的底面一定要被第j個廠房體的底面完全覆蓋住
總結
以上是生活随笔為你收集整理的动态规划训练15 [Monkey and Banana HDU - 1069 ]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态规划训练14 [Max Sum Pl
- 下一篇: 刘恺威演过的电视剧 这几部佳作你看过吗