码迷,mamicode.com
首页 > 其他好文 > 详细

ARC096D

时间:2020-09-17 22:20:47      阅读:31      评论:0      收藏:0      [点我收藏+]

标签:次数   tps   math   com   ref   部分   href   告诉   line   

ARC096D

题目链接

稍微差分一下,问题可以变成完全背包,但是每个元素的出现次数为 \(D\),花费为 \(m_i‘\),贡献为 \(\textrm{size}(i)\)

然后观察一下物品个数和贡献都小于 \(50\)

但是 D 却是 \(10^9\)

考虑贪心,我们按照 "性价比" 进行贪心,假设 \(\frac{w_i}{m_i}\ge \frac{w_j}{m_j}\) 那么我们优先选 \(i\)

然而直觉/事实告诉我们他是错的,然而略做观察,发现 \(w\) 很小,假设 \(i\) 被选了 \(w_j\) 个,同时 \(j\) 被选了 \(w_i\) 个,那么此时我们必然会选 \(i\)\(w_j\) 个。

换而言之,在 \(i\) 被选完之前,\(j\) 被选至多 \(w_i-1\) 个。

所以考虑将 \(\max\{w_i\}\) 设为每个物品的数量上界,多余部分除去直接贪心,这个部分我们 Dp 即可。

ARC096D

标签:次数   tps   math   com   ref   部分   href   告诉   line   

原文地址:https://www.cnblogs.com/Soulist/p/13653655.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!