EqualTowers

又一道DP,剛開始時完全沒有思路,上網搜了一下別人的程序,其實也不是很難……

總結一下,大方向是對於每一塊brick,搜索3種情況,放左邊、右邊、不放。但如果簡單暴力搜索一定超時,3^500000

DP的關鍵就是找到“狀態”,以什麼來表示狀態

上網搜了一下別人的程序,用“兩塔高度差”作爲狀態,下來的思路就很簡單了

 

找到“狀態”是最難的一步,如何確定“狀態”,目前我還沒找到好的方法

通常“狀態”從直接的方向是找不到的,需要換一個角度

 

這道題目可以從結果找到,“高度相等,且高度最大”。“高度相等”,換一個角度就是兩塔高度差爲0。因此我們最終關心的只是兩塔的高度差,以及在這個高度差下的最大高度。

由此DP就很清晰了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章