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