第二道 单调dp题
单调队列只是辅助,dp是关键,写出合理的dp方程才知道并用单调队列优化。
大意:1-n 个地点 ,放m次烟花 ,每次可走d的长度 (可以不是必须)
给出m次烟花的参数
a[i] —烟花地点 b[i]–第i次烟花的一个参数,没什么实际意义 t[i]—燃放烟花的时间
每放一次烟花,这个人就会得到 bi - |ai - x| 的权值 x是当时的位置
给出状态方程:
dp[i][j]:第i次燃放烟花时,且人在j 时的最大值。
dp[i][j] 可以转移到什么状态 ——> dp[i+1][k]
dp[i][j] = max(dp[i][k]) + b[i] -|a[i]-j|
就是说 我现在可以从k 的位置走到 j,并加上相应的权值。
那么k会受到 t[i] -t[i-1] 和 d 的限制
限制是什么?
Δ t = t i − t i −