图论知识点总结4 负环(实时更新)

一、spfa判断负环

虫洞

https://www.acwing.com/problem/content/906/

某个点更新大于等于n次则认为有负环

注意当判断负环时,以上的方式可能会超时,这时候可以考虑把队列换成栈。

二、0/1分数规划问题

观光奶牛

https://www.acwing.com/problem/content/363/

0/1分数规划问题的比值是在一个范围内的,且满足单调性。对于答案可以进行二分。假设要求的最大值为mid,则mid变成了已知量,将mid代入进不等式并移项,可以将问题转化为判断正环。

三、差分约束

1.糖果

https://www.acwing.com/problem/content/1171/

模板题。图上的最短路问题和差分约束问题可以相互转化。不等式不成立等价于图中有正环(或者负环)。注意源点的条件是从该点出发可以走到所有的边。由最小(大)上(下)确界原理求最值。

 

做法流程:

①挖掘题目中的信息,如果求最小值,就找A>=B+c的,如果求最大值,就找A<=B+c的

②找一个超级原点,使得该原点一定可以遍历到所有边

③从超级原点开始求单源最短路。如果求最小值,则求最长路,如果求最大值,则求最短路

 

2.区间

https://www.acwing.com/problem/content/description/364/

3.排队布局

https://www.acwing.com/problem/content/description/1172/

一个问题如何转换成差分约束问题。挖掘题目中存在的“边”,然后转化成差分约束模板来做。

posted @ 2021-05-05 09:59  _rhinoceros  阅读(198)  评论(0)    收藏  举报