ZOJ3956 ZJU2017校赛(dp)

Posted 人活着就是为了Chelly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ZOJ3956 ZJU2017校赛(dp)相关的知识,希望对你有一定的参考价值。

题意:给出n对(h,c)  

   记  sumh为选出的h的总和  sumc为选出的c的总和

   你可以从中选出任意多对(可以不选)

   使得  sumh^2-sumh*sumc-sumc^2 最大

   输出最大值

   输入第一行表示数据组数 T

   接下来一行为n,(1 <= n <= 500)

   接下来n行为n对(hi,ci),1 ≤ hi ≤ 10000, 1 ≤ ci≤ 100

   保证所有n的总和不超过5000.

分析:H^2-H*C-C^2

   从这个式子可以看出,当C固定不动的时候

    1)若H>=C,则H越大越好

    2)若H<C,则H越小越好

   注意H小于C的时候,这个式子和为负数,根据题意,我们可以有ans=0,所以这种H<C的情况肯定不是最优,不需要考虑

   综上,我们只关心对于固定的C,求最大的H

   就直接背包了,dp[i][j]表示前i个物品,当ΣC=j的时候,ΣH的最大值

   注意滚动数组滚动下

   最后扫一遍答案

以上是关于ZOJ3956 ZJU2017校赛(dp)的主要内容,如果未能解决你的问题,请参考以下文章

ZOJ 17届校赛 How Many Nines

ZJU校赛 一道计数题

ZOJ 17届校赛 Knuth-Morris-Pratt Algorithm

篮球校赛(状压dp)

DP坑多HNU2021校赛Doorman门童

DP坑多HNU2021校赛Doorman门童