P1260 工程規劃 差分約束

2022-04-30 09:30:09 字數 654 閱讀 8502

差分約束.

差分約束似乎精髓就兩句話:

所以對於本題的式子 \(ti-tj \leq b\) 可以寫成: \(t_i-b \leq t_j\).

然後就從 \(i\) 向 \(j\) 連一條 \(-b\) 的邊然後跑最長路即可.

按式子可以隨便搞.

#includeusing namespace std;

const int maxn=5008;

struct sja[maxn];

int kk,inf,n,m,cnt[maxn],flag;

int head[maxn],size;

int v[maxn],dis[maxn];

void add(int x,int y,int z)

void spfa(int s)

}v[x]=0;

}}int main()

memset(dis,127,sizeof(dis));

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

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

kk=min(kk,dis[i]);

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

printf("%d\n",dis[i]-kk);

}

P1260 工程規劃

差分約束板子 差分約束 把 i j x 操作等價於從 j 到 i 連一條邊權為 x 的邊。然後跑一遍spfa統計最短路,即為一組合法序列。這道題裡要求以乙個點為基準點 0 在跑完spfa之後統計最小的dis值,然後按順序輸出dis值減去這個最小值即可。另乙個問題是圖不一定連通,有兩個解決方法 1.建...

P1260 工程規劃

題目非常得簡潔明瞭,差分約束的裸題,甚至連不等式都給你寫出來了 沒什麼好分析的,直接看不等式建立方程 這裡把 ti 和 tj 都表示為 i 和 j 因為求的應該是最早的開始時間,我們應該轉化為 然後跑最長路求解 i j leq b j leq b i j geq i b 那麼就應該是從 i 到 j ...

題解 P1260 工程規劃

建議完成以下題目後在來看此題 題解哦。p3385 模板 負環 p5960 模板 差分約束演算法 核心演算法 差分約束 這幾乎是一道裸題 題中寫道 不等式形如 t i t j leq b 代表 i 和 j 的起始時間必須滿足的條件。每個不等式的右邊都是乙個常數 b 這些常數可能不相同,但是它們都在區間...