Loading

P9197 [JOI Open 2016] 摩天大楼 / Skyscraper

一个很好诠释连续段 DP 到底能解决什么样问题的一个题。

首先绝对值肯定要办掉,其中一种方式是从小到大加入数。

考虑形成了若干个连续段,那么转移分为以下三种:

  • 新开连续段
  • 增加某个连续段长度
  • 合并两个连续段

那么,我们现在唯一需要考虑的就是答案如何统计,其实我们可以将差拆开,提前将需要的贡献算出来(就是在之前将系数贡献加到 DP 数组状态里),注意到到了边界就会停止这个过程,所以这个做法绝对是对的。

posted @ 2025-09-08 09:07  Alexande  阅读(7)  评论(0)    收藏  举报