ARC096D

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 即可。

posted @ 2020-09-11 19:37  Soulist  阅读(99)  评论(0编辑  收藏  举报