差分约束系统总结(转)
轉載地址
?
差分約束總結:?
今天請教了DQS大神,算是對差分做一個系統性的總結吧,也算是對自己近期不完善理解的差分約束理一遍。
差分約束分為3大類,求最小,求最大,求是否滿足約束條件,第三類求是否滿足直接判斷負環(huán)即可,一般都結合前兩類來出題。
1:求最小。求最小一般是跑最長路,在已有約束條件下建立超級原點(自以為是這么叫),然后根據題目向每一條邊建邊(邊權根據題目而定),然后跑最長路,求最小的一般是滿足這樣的約束條件:a >= b + c(這么寫是為了體現最長路的性質,便于理解)(并且注意這里不要和松弛混了,這個式子說明a要比b至少大c,所以b要通向a至少要c,可以這么理解一下),滿足這樣的約束條件就b向a建一條權值為c的邊。
2:求最大。求最大一般是跑最短路,同樣是在已有約束條件下建立超級原點,建邊,最短路類型的一般是滿足約束條件:a <= b + c(體現了最短路的性質),這樣的約束條件下由b向a建一條權值為c的邊。
但是題目可能不給你恰好的約束條件(a >= b + c || a <= b + c),可能會出現下面的情況:?
a < b + c?
a > b + c?
a = b + c?
a < b?
a > b?
a = b;?
依次轉化為下面情況:?
a <= b + c - 1?
a >= b + c + 1?
(a >= b + c a <= b + c)?
另外三種是上面三種在C = 0時的情況;?
其他自行腦補~ 當然具體情況依題目而定咯~
題目鏈接:?
POJ:Candies;?
BZOJ:?[SCOI2011]糖果 題號居然是2330 不是權限題?
今天T3 =-= 沒有鏈接
轉載于:https://www.cnblogs.com/zhenghaotian/p/7027863.html
總結
以上是生活随笔為你收集整理的差分约束系统总结(转)的全部內容,希望文章能夠幫你解決所遇到的問題。