一、题目描述
二、问题简析
类似 01背包,对于每个元素,可以拿(+、-)或不拿。
令 d p [ i + 1 ] [ j ] = dp[i + 1][j]= dp[i+1][j]= 前 i + 1 i + 1 i+1 个元素是否可以使值为 j j j。
d p [ i + 1 ] [ j ] = { t r u e , d p [ i ] [ j ] o r d p [ i ] [ j − A [ i ] ] o r d p [ i ] [ j + A [ i ] ] = = t r u e f a l s e , o t h e r s dp[i + 1][j] = \begin{cases} true &,dp[i][j]~or~dp[i][j - A[i]]~or~dp[i][j + A[i]] ==true \\ false &,others \end{cases} dp[i+1][j]={ truefalse,dp[i][j] or dp[i][j

最低0.47元/天 解锁文章
604

被折叠的 条评论
为什么被折叠?



