POJ 1364 差分約束

2021-07-22 05:59:14 字數 635 閱讀 7166

思路:

把所有「>」變成「≥」

把所有「

(加一減一就好了)

然後我們發現:圖不一定連通!!

怎麼辦呢

對於每乙個連通塊spfa就好了嘛……

//by siriusren

#include

#include

#include

#include

#define n 111

using

namespace

std;

char a[3],inq[n];

int n,vis[n],xx,yy,zz,m,dis[n],cnt[n];

int first[n],next[n*n],v[n*n],w[n*n],tot=0;

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

bool spfa(int x)}}

return1;}

int main()

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

}puts("lamentable kingdom");

end:if(scanf("%d",&n)&&n)goto start;

}

POJ 1364 差分約束

解題的思路比較奇葩。第一次見到啊,也不知道別人是怎麼看出來這種情況下就是差分約束也就是可以用到圖論,表示真的好迷啊。看來對差分約束的概念還很差呢。include include include include includeusing namespace std const int maxn 100...

POJ 1364 差分約束

題意 給出乙個數字序列 s 它有 m 個子序列 si 現在給出 m 個限制條件 第 i 個子序列的和 ki 或 第 i 個子序列的和 ki 思路 標準的差分約束,用s is i si 表示a1 a2.ai a 1 a 2.a i a1 a2 ai 的值,並且s0 0s 0 0 s0 0,所有s is...

poj 1364 差分約束

思路 設dis i 為從0點到第i點的序列總和。那麼對於a b gt k 來講意思是dis b a dis a k 對於a b lt k來講就是dis b a dis a dis a dis b a k 1 dis a b dis a k 1 那麼就可以根據公式來建邊了,用bellman ford演...