Code: #include<cstdio> #include<queue> using namespace std; const int N=10000+233; const int INF=10000000; int head[N],to[N<<1],nex[N<<1],val[N<<1],vis[N],d[N]; int cnt; void add_edge(int u,int v,int c) { nex[++cnt]=head[u],h…
题目大意 n个点 m条描述 农场 a 比农场 b 至少多种植了 c 个单位的作物. 农场 a 比农场 b 至多多种植了 c 个单位的作物. 农场 a 与农场 b 种植的作物数一样多. 题解 差分约束裸题 可以把m条描述转换成一张图 ai-bi≥c--->bi-ai≤-c ai向bi连边权值为-c ai-bi≤c bi向ai连边 权值为c ai-bi≥0并且ai-bi≤0所以ai和bi之间连双向边.... 开始我不明白为什么要虚拟一个0点...原来图可能不连通.... 判断负环...要用sp…