https://vj.imken.moe/contest/598718#problem/J
观察到数据范围很小,但一个很重要的信息我们缺失了,就是珠宝的数量,所以我们考虑枚举珠宝的数量
k
k
k
。
对于横纵坐标什么至多至少的限制,比如
a
i
a_i
a
i
前最多偷
b
i
b_i
b
i
个,可以转化为第
[
b
i
+
1
,
k
]
[b_i+1,k]
[
b
i
+
1
,
k
]
的坐标取值下界为
a
i
+
1
a_i+1
a
i
+
1
。因此我们可以转化出在某个维度上第
i
i
i
个宝石的取值范围是
[
L
i
,
R
i
]
[L_i,R_i]
[
L
i
,
R
i
]
。
但是我们有两个维度,但我们刚好有两个源汇点,考虑拆维。左边维护
x
x
x
,右边维护
y
y
y
。
关于每个宝石只能选一个,还要使代价最大,我们在中间拆点,连
(
1
,
v
a
l
)
(1,val)
(
1
,
v
a
l
)
的边,最后求一次费用流即可。