当前位置: 首页 > 工具软件 > Roses > 使用案例 >

#4519. Guns N' Roses

沈良策
2023-12-01

题意

二维平面上有若干障碍,每个形如 ( H i , L i , R i , W i ) (H_i,L_i,R_i,W_i) (Hi,Li,Ri,Wi), 表示以 ( L i , H i ) (L_i,H_i) (Li,Hi), ( R i , H i ) (R_i,H_i) (Ri,Hi) 为左右端点、权值为 W i W_i Wi 的线段.

你站在 ( 0 , 0 ) (0,0) (0,0). 你可以漫天开枪,若一枪的威力为 X X X,你可以击穿 W i ≤ X W_i\le X WiX 的障碍,但子弹会在 W i > X W_i>X Wi>X的障碍前停下.

打到端点也算击落.

你要击落所有障碍.

试最小化威力和.
50 % 50\% 50% 的数据, n ≤ 8 n\le 8 n8.

100 % 100\% 100% 的数据, T ≤ 10 T\le 10 T10, 1 ≤ n ≤ 300 1\le n\le 300 1n300, 1 ≤ H i ≤ 1 0 9 1\le H_i\le 10^9 1Hi109, − 1 0 9 ≤ L i ≤ R i ≤ 1 0 9 -10^9\le L_i\le R_i\le 10^9 109LiRi109, 0 ≤ W i ≤ 1 0 9 0\le W_i\le 10^9 0Wi109.

题解

完全不会区间DP啊,考场上连暴力都写挂。。。
显然对障碍先按极角序排序、离散,问题转化为平面上每个高度有一个线段,每次可以从一个横坐标开始射穿这列上的障碍,直到有一个比它大。
对于这样坐标范围不大,点数不多的最优化决策问题,先考虑区间DP,关键在于找到能帮助转移的突破口,使原区间可分为不相互影响的子区间。
发现对于权值最大的障碍,一定要从它包含的坐标中选一个点,发射一个威力为它的枪。又注意到发射完后,所有包含这个点的障碍都会没掉,这样剩下的障碍都分布在这个点的两侧,于是问题转化为两边的相似子问题,就可以区间DP了。

 类似资料:

相关阅读

相关文章

相关问答