csu1646 HearthStone
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                csu1646 HearthStone
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                 
 好久沒有寫dp,這題算很基礎(chǔ). 
 dp首先定義狀態(tài):dp[i][j][k]:當進行到第i輪,達拉然法師出場j個,刺骨使用k次情況下的最大傷害。 
 仔細考慮,還有每輪的費用,法師,刺骨使用幾張的情況這些并不需要定義成狀態(tài)。開始我想復(fù)雜,把這些也定義成狀態(tài),結(jié)果狀態(tài)轉(zhuǎn)移方程反而不好寫。這里就要思考一個變換過程中并不是要把每一個變換都設(shè)置為狀態(tài)的一個變量,只要拍你定義的狀態(tài)容易寫出狀態(tài)轉(zhuǎn)移方程,并能正確求解這個過程就是好的dp解法。 
 定義好了狀態(tài):就是考慮每輪在費用一定的情況下,你可以選擇 只有添加法師和刺骨數(shù)量的不同。這樣狀態(tài)轉(zhuǎn)移方程就可以慢慢推。注意一個條件在某一輪內(nèi),若在使用刺骨之前使用過至少一張卡,則可額外造成2點傷害,分情況轉(zhuǎn)移一下!
總結(jié)
以上是生活随笔為你收集整理的csu1646 HearthStone的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: c语言中通过输入身份证号获取出生日期
 - 下一篇: 计算机教育部第四次学科评估结果,超级重磅