P1526 [NOI2003]智破连环阵 [搜索+剪枝(二分图)]

[ N O I 2003 ] 智 破 连 环 阵 [NOI2003]智破连环阵 [NOI2003]

在坐标轴第一象限中有 M M M 个武器, N N N 个炸弹, 每个武器按顺序开启 可被摧毁状态, 以下简称 B B B 状态, 若一个武器在炸弹的爆炸范围内, 则这个武器将被摧毁, 紧接着下一个武器将会开启 B B B 状态.

要求安排炸弹的爆炸顺序, 使得摧毁全部武器使用的炸弹最小 .

M , N ≤ 100 M, N \le 100 M,N100 .


最 初 想 法 \color{blue}{最初想法}

搜索? 直接退火就好了… 爆炸 .代码纪念 .


正 解 部 分 \color{red}{正解部分}

一个炸弹摧毁的一定是连续的一段区间, 所以整个武器序列可分为几段, 每段被都某个炸弹摧毁 .

设当前 D F S DFS DFS 到的区间右端点为 r r r, 划分了 c n t cnt cnt 个区间,

预处理出 M a x _ t [ i , j ] Max\_t[i,j] Max_t[i,j] 表示 i i i 炸弹从 j j j 武器开始炸起, 所能炸到的最右端点,
不难得出状态转移式 M a x _ t [ i , j ] = max ⁡ ( M a x _ t [ i , j + 1 ] , j ) Max\_t[i,j] = \max(Max\_t[i,j+1], j) Max_t[i,j]=max(Max_

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值