poj 3159 差分約束(分發糖果)

2021-06-22 18:50:05 字數 628 閱讀 5973

題意:flymouse是班長,由他來發糖果。flymouse希望自己的糖果數盡量多於snoopy。其他人必須使得自己的糖果不少於某某,給出m個這種約束關係(u,v, w):即u的糖果數不能比v的糖果數少w。問flymouse最多比snoopy多幾個糖果。

思路:差分約束spfa。必須用棧

#include #include #define n 30005

#define m 150005

#define inf 0x3fffffff

struct edgee[m];

int first[n],dis[n],visited[n];

int stack[n];

int n,m,top,tops;

void init()

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

int relax(int x,int y,int w)

return 0;

}int spfa(int s,int t)

} }return dis[t];

}int main()

printf("%d\n",spfa(1,n));

} return 0;

}

POJ3159差分約束(SPFA)

題意 有一批糖果要由班長flymouse分發給班裡的小朋友,給出m對資料u,v,w,表示第u個小朋友不能比第v個小朋友少w個,但flymouse與snoopy不和,所以在滿足上述約束的條件下,flymouse要盡量比snoopy多。而對於其他小朋友而言,則只希望自己得到的糖果不少於班上某某其他人就行...

POJ 3159 Candies 差分約束

題目意思 flymouse是幼稚園班上的班長,一天老師給小朋友們買了一堆的糖果,由flymouse來分發,在班上,flymouse和snoopy是死對頭,兩人勢如水火,不能相容,因此fly希望自己分得的糖果數盡量多於 snoopy,而對於其他小朋友而言,則只希望自己得到的糖果不少於班上某某其他人就行...

POJ 3159 Candies 差分約束

poj 3159 n個點,每個點有權值p i 給出一些條件 即p j p i k,k 0。要求在滿足這些條件的情況下,求出p n p 1 的最大值。觀察最短路的性質,di st i di st j wt j,i 與p j p i k 形式很相似 di st i mi n p i m in這樣使p i...