Loading

CF571B Minimization DP

首先我们发现下标模 \(k\) 同余的数肯定放一组,然后这一组的最小贡献肯定是排完序后最大减最小。

考虑这样一个贪心,我们的一组内的数肯定是原数组排完序后连续的一段,因为如果不是一段,我们的值域上将会有区间的贡献次数 \(> 1\),这是不优的,然后由于是连续的,所以我们考虑 DP。

发现一组的大小只会是 \(\frac{n}{k}\) 或者 \(\frac{n}{k} + 1\),除法默认向下取整,然后我们设 \(f_{i, j}\) 为有 \(i\) 组大小为 \(\frac{n}{k}\)\(j\) 组大小为 \(\frac{n}{k} + 1\),然后每次转移一段连续区间就做完了。

posted @ 2024-09-18 14:36  Alexande  阅读(12)  评论(0)    收藏  举报