bzoj3436 小K的農場 差分約束系統

2021-07-05 10:15:40 字數 714 閱讀 8910

差分約束系統,a到b有一條長度為c的邊,表示b至多比a多c。

那麼對於操作1,a比b多至少c,等價於b比a多至多-c。

然後矛盾的情況就是,a比a多至多<0,即存在負環,記得跑最短路。

#include#include#include#include#include#include#define inf 0x7fffffff

#define maxn 10010

using namespace std;

int next[maxn],head[maxn],to[maxn],len[maxn];

int dis[maxn];

int n,m,num,flag=0;

bool vis[maxn];

void spfa(int x)

dis[to[p]]=dis[x]+len[p];

spfa(to[p]);

}vis[x]=0;

}void addedge(int x,int y,int z)

int main()

if (op==2)

if (op==3) addedge(x,y,0);

} for (int i=1;i<=n;i++)

if (flag) printf("no\n"); else printf("yes\n");

return 0;

}

BZOJ 3436 小k的農場(差分約束)

description 背景 小k是個特麼喜歡玩mc的孩紙。描述小k在mc裡面建立很多很多的農場,總共n個,以至於他自己都忘記了每個農場中種植作物的具體數量了,他只記得一些含糊的資訊 共m個 以下列三種形式描述 農場a比農場b至少多種植了c個單位的作物,農場a比農場b至多多種植了c個單位的作物,農場...

BZOJ 3436 小K的農場 差分約束

原題鏈結 背景小k是個特麼喜歡玩mc的孩紙。描述小k在mc裡面建立很多很多的農場,總共n個,以至於他自己都忘記了每個農場中種植作物的具體數量了,他只記得 一些含糊的資訊 共m個 以下列三種形式描述 農場a比農場b至少多種植了c個單位的作物,農場a比農場b至多 多種植了c個單位的作物,農場a與農場b種...

BZOJ3436 小K的農場

差分約束系統。分析一下三種情況 1.農場a aa比農場b bb至少多種植了c cc個單位的作物 即a b c b a ca geq b c b leq a c a b c b a c,a aa向b bb連一條長度為 c c c的單向邊。2.農場a aa比農場b bb至多多種植了c cc個單位的作物。...