1 条题解
-
0
自动搬运
来自洛谷,原作者为

HP_Serenity
不拿7勾不改签搬运于
2025-08-24 23:15:20,当前版本为作者最后更新于2025-05-17 13:08:20,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
第一次场蓝,写篇题解纪念下。
关于符号的说明: 代表按位与。
给定一个长度为 的序列 和一个初始位置 ,每次操作可将 移至任意位置,而第 次操作花费为 。 为序列 的最大值,目标是求出第 次操作结束时,将 转移到每个位置 的最小总花费。
考虑 dp 做法。定义 为 次操作后 位于位置 的最小总花费。因为在 次操作时可以从任意位置 移到 ,所以令 为第 次操作转移到 的花费,推出动态转移方程:
$ dp_{j,u}=\displaystyle\min_{1 \le i \le n} (dp_{j-1,v}+w_{u,j}+2 \times (L-x_v \operatorname{and} x_u)) $。
但是时间复杂度为 ,显然超时。
观察到 ,考虑位运算优化。将 拆成高低 位。令 $high_i=(\lfloor\frac{x_i}{2^8} \rfloor) \operatorname{and} (2^8-1)$ 而 。根据按位与的性质,可将 dp 式子拆成高低 位的贡献,即
$ dp_{j,u}=\displaystyle\min_{1 \le i \le n} (dp_{j-1,v}+w_{u,j}+2 \times L-2 \times (high_v \operatorname{and} high_u) \times 256-2 \times (low_v \operatorname{and} low_u)) $。
最后再通过预处理最小值进一步优化即可。
记 为 ,则时间复杂度:。空间复杂度:。可以通过。
- 1
信息
- ID
- 11050
- 时间
- 3000ms
- 内存
- 512MiB
- 难度
- 5
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者