poj 1422 Air Raid 二分匹配

2022-06-02 17:45:07 字數 994 閱讀 7910

air raid

time limit:

memory limit:

total submissions:

accepted:

description

input

output

sample input

243

3 41 3

2 33

31 3

1 22 3

sample output

2

1

source

dhaka 2002

1

//228k 0ms c++ 838b 2013-11-10 20:45:412/*

34題意:5

有n個地點,m條單向路,求每個點最多經過一次,求遍歷所有點最少要多少個士兵 67

二分匹配:

8經典的最小點覆蓋問題,匈牙利模板求出最大匹配數,910

then:

11最小點覆蓋 = n - 最大匹配數

1213

*/14 #include15 #include

16int g[125][125

];17

int match[125

];18

int vis[125

];19

intn,m;

20int dfs(int

x)2129}

30}31return0;

32}33void

hungary()

3441 printf("

%d\n

",n-ret);42}

43int main(void)44

55hungary();56}

57return0;

58 }

poj 1422Air Raid 最小路徑覆蓋

題意 有個城鎮,所有路都是單行道,並且沒有環,所有路都連線在十字路口上 現在用最少的傘兵走完這些式子路口,每個只能走一遍 很明顯的最小路徑覆蓋 最小路徑覆蓋 點數 最大匹配 需要拆點 所有式子路口 在x中乙個 在y中乙個 路把兩個集合中十字路口連線起來 求最大匹配 還是匈牙利 include inc...

POJ 1422 Air Raid 最小路徑覆蓋

題意 有n個十字路口,這些十字路口通過m條路連線,邊是單向的,現在要派一些傘兵去空襲這些十字路口,每個傘兵可以沿著一條路空襲沿路的十字路口,問最少要派出多少傘兵。解法 對於有向無環圖求最小的路徑覆蓋數相當於將原圖中的點拆開後,求乙個最大匹配數,然後用頂點數減去最大匹配數就是最小路徑覆蓋了。如下 in...

poj1422Air Raid(最小路徑覆蓋)

題意 乙個鎮上有很多街道,很多十字路口,無迴圈,把傘兵放在各個十字路口上,使之能把所有的街道都走過,求最小的傘兵數。最小路徑覆蓋 節點數 最大匹配。模板題 view code 1 include 2 include3 include4 using namespace std 5int map 200...