给定$n$个格子
对于前M1个约束,区间$[L,R]$内取的数量必须严格不少于K
对于后M2个约束,区间$[L,R]$外取的数量必须严格不少于K
满足所有M1+M2个约束的前提下使得取的个数最少,输出最少取的个数
转化一下
然后答案满足单调性。
注意!!!
跑一遍差分约束即可,1
2
3cnt[to] = cnt[x] + 1;
if(dis[to]<0)
return false;
注意这两个剪枝点即可。
代码
1 |
|
给定$n$个格子
对于前M1个约束,区间$[L,R]$内取的数量必须严格不少于K
对于后M2个约束,区间$[L,R]$外取的数量必须严格不少于K
满足所有M1+M2个约束的前提下使得取的个数最少,输出最少取的个数
转化一下
然后答案满足单调性。
注意!!!
跑一遍差分约束即可,1
2
3cnt[to] = cnt[x] + 1;
if(dis[to]<0)
return false;
注意这两个剪枝点即可。
1 |
|