1 条题解
-
0
Nene 与 MEX 操作题解
思路
长度为 的一段总能被变成 个 ,因而贡献 。先用单点操作把这一段全部变成 。设递归过程要把一段全零数组变成 :先递归处理前 个位置,对整段操作一次使其全部变成 ,再递归处理前 个位置。最后对整段操作一次,其 MEX 为 。
递归所用操作数满足 ,再加清零和最后一次操作。即使 ,操作总数也远小于 。
因此最优方案等价于把数组划分成若干连续块:长度大于一的块可贡献块长平方;长度为一的位置可以保留原值,也可以变成 。
做法
令 表示前 个位置能得到的最大和。可以保留第 个数,从 转移;也可以选取某个 ,把区间 整体变成长度 ,从
转移。记录每次最优转移,倒推得到所有需要变换的区间,再按上述递归构造逐段输出操作。
复杂度
动态规划时间复杂度为 ,空间复杂度为 。构造最多输出 次操作;在 时满足题目上限。
- 1
信息
- ID
- 1200
- 时间
- 2000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 0
- 上传者