【学习笔记】差分约束

图论与不等式的完美结合 。

  • 如果求的是两个变量差的最大值,那么求最短路,形如 x i + d ≥ x j x_i+d\geq x_j xi+dxj
  • 如果求的是两个变量差的最小值,那么求最长路,形如 x i + d ≤ x j x_i+d\leq x_j xi+dxj

瞎讲几道吧

Wannafly 挑战赛9E - 组一组

有一个长为 n 的数列 A,其中有 m 个限制条件,条件有两种:

1、对于区间 [l,r],其区间元素按位或和等于 x。
2、对于区间 [l,r],其区间元素按位与和等于 x。

求出一个数列 A,使得满足给定的 m 个条件,保证有解。

1<=n,m<=10^5, 1<=l<=r<=n, 0<=x<2^20

sol:显然按位考虑 。然后求最短路 。

等等 … 直接 spfa 太慢会 T 。

我们可以把上界再控制小一点。

对于或为 0 的运算,我们知道 s[l~r]=0 。

对于前缀和 sum[i] ,假设 s[1~i] 有 x 个 0 。那么 sum[i]<=i-x 。

我们直接从源点连一条 i-x 的边 ,能有效减少迭代次数 。

[POI2015] PUS

POI

首先不考虑复杂度问题,这是一道差分约束 。

然后考虑优化一下。

其一是建图的时候,边的数量过多的问题,我们使用线段树来优化建图。

其二则是数据太大最短路跑不过的问题。我们 根据图的特殊性来优化

首先是 d[i]=x ,我们扔掉负边,即只保留下界,最后回头检验。

这样都是正边了。

其次如果有正环,输出无解 。

直接 DAG 跑拓扑排序即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值