洛谷P7535题解
题目(被校内的大佬爆切)
首先 由于题目所说“同时要尽可能保证分得的总金额最大。”所以可以想到是贪心或者是 dp 转移。但是不难发现贪心一定是 WA 的。所以我们就应当考虑 dp 转移。
我们设 $dp{i,j}$ 表示在 $1-i$ 个钞票之中使得两人钱数之差为 $j$ 的情况时两人中选到最多的钱数是多少。
dp转移方程
$dp_{i,j} = max \begin{cases}
dp_{i-1,j} \\
dp_{i-1,j+c_i}+dp_{i+c_i}+c_i \\
dp_{i-1,abs(j-c_i)}+c_i
\end{cases}$
$ dp_{i-1,j}$ 表示如果第 $i$ 个钞票不选的情况。
$ dp_{i-1,j+c_i}+c_i$ 表示第 $i$ 个钞票给目前钱数多的那个人。
$ dp_{i-1,abs(j-c_i)}+c_i$ 表示第 $i$ 个钞票给目前钱数少的那个人。
于是就可以写出代码了,~~本蒟蒻~~在此就不奉上代码了。

浙公网安备 33010602011771号