POJ 2479

輸入:
1 -1 2 2 3 -3 4 -4 5 -5

思路:
這是一個動態規劃的問題,滿足DP的兩個條件:重疊子問題和最優子結構。
採用自底向上的設計策略,先從左至右計算出每個段的最大子序列和a[i],再反過來,從右至左計算每個段的最大子序列和b[i],最後遍歷每個段,求出a[i]+b[i]的最大值,即爲最後所求值。

代碼:

結果:
最開始的算法用了O(N^2)的時間複雜度,導致Time Limit Exceeded;後來改進了,時間複雜度降爲O(N),但提交到POJ出現了Wrong Answer。不知何故,以待研究。

借鑑一下別人的Accepted的代碼:
http://fghtech.blogbus.com/logs/62555535.html
在此對博主表示感謝。

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