CF 67 C. Sequence of Balls

CF 67 C. Sequence of Balls

首先可以发现\(2t_e\geq t_i+t_d\)。

首先可以发现每一个元素最多会被换一次。

而且可以发现操作按照某一个顺序是最优的:

  1. 删除
  2. 交换
  3. 添加
  4. 替换

设\(dp_{i,j}\)表示考虑了\(a\)的前\(i\)个变成了\(b\)的前\(j\)个的答案。

比较难处理的是:

  1. 删除\([x+1,y-1]\)
  2. 交换\(x,y\)
  3. 在\(y,x\)中间添加一些元素

这时候需要观察一个很重要的性质:

交换\(x,y\)就一定不会修改。

因为:

\(te+tr\geq td+tr\and te+tr\geq tr+tr\)

同时\(te\geq \frac{td+tr}{2},te\geq tr\)。

然后贪心交换到最近的就可以了。

上一篇:小白都看得懂的Javadoc使用教程


下一篇:小学生都看得懂的C语言入门(2): 判别 循环的一些应用实例