请教**平台周赛的一个DP问题(听说提及别的平台会限流)
2410
2023.02.09
2023.02.09
发布于 未知归属地

问题

  1. 有两种操作 :加减1 以及 乘2

  2. 每进行一次操作的代价分别为

  3. 问从操作到的最小代价是多少

  4. 时间复杂度限制在

解法

f[i] : 从0操作到i的最小代价

  1. 如果i是奇数 : f[i] = min(f[i - 1] + x, f[(i + 1) / 2] + y + x);
    i只能从i - 1加上来,或者从(i + 1) / 2乘一次2再减1

  2. 如果i是偶数 : f[i] = min(f[i - 1] + x, f[i / 2] + y)
    i只能从i - 1加上来,或者从i / 2乘一次得到

问题

为什么没有从i + 1 转移到 i以及类似的情况?

评论 (28)