LOJ2292 「THUSC 2016」成绩单

本文深入探讨了区间动态规划算法,详细解析了如何通过枚举和递推的方式求解区间内的最优解,包括删掉元素的最小代价和整体操作的最小代价,提供了O(n^5)的复杂度解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

f i , j , l , r f_{i,j,l,r} fi,j,l,r表示区间 [ i , j ] [i,j] [i,j]已经删掉若干,剩下的那些元素中的最大值为 r r r,最小值为 l l l,删掉那若干个元素的最小代价; g i , j g_{i,j} gi,j表示将区间 [ i , j ] [i,j] [i,j]全部删完的最小代价。

对于 f i , j , l , r f_{i,j,l,r} fi,j,l,r,考虑 j j j这个元素是否被删掉了:

  • 如果它已经被删掉,我们枚举它是和哪些元素一起删掉的,就有:
    f i , k , l , r + g k + 1 , j → f i , j , l , r f_{i,k,l,r} + g_{k+1,j} \to f_{i,j,l,r} fi,k,l,r+gk+1,jfi,j,l,r
  • 否则, j j j没有被删掉,则得到
    f i , j − 1 , l , r → f i , j , min ⁡ { l , w j } , max ⁡ { r , w j } f_{i,j-1,l,r} \to f_{i,j,\min\{l,w_j\},\max\{r,w_j\}} fi,j1,l,rfi,j,min{l,wj},max{r,wj}

对于 g g g,考虑我们是否对 [ i , j ] [i,j] [i,j]整体进行过操作:

  • 如果没有,则
    g i , k + g k + 1 , j → g i , j g_{i,k} + g_{k+1,j}\to g_{i,j} gi,k+gk+1,jgi,j
  • 否则
    f i , j , l , r + a + b ( r − l ) 2 → g i , j f_{i,j,l,r} + a + b(r-l)^2 \to g_{i,j} fi,j,l,r+a+b(rl)2gi,j

复杂度 O ( n 5 ) O(n^5) O(n5)

Code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值