HDU 2063 入門匈牙利模板題

2021-08-25 11:28:06 字數 1017 閱讀 7816

過山車

rpg girls今天和大家一起去遊樂場玩,終於可以坐上夢寐以求的過山車了。可是,過山車的每一排只有兩個座位,而且還有條不成文的規矩,就是每個女生必須找個個男生做partner和她同坐。但是,每個女孩都有各自的想法,舉個例子把,rabbit只願意和xhd或pqk做partner,grass只願意和linle或ll做partner,princesssnow願意和水域浪子或偽酷兒做partner。考慮到經費問題,boss劉決定只讓找到partner的人去坐過山車,其他的人,嘿嘿,就站在下面看著吧。聰明的acmer,你可以幫忙算算最多有多少對組合可以坐上過山車嗎?

input

輸入資料的第一行是三個整數k , m , n,分別表示可能的組合數目,女生的人數,男生的人數。0output

對於每組資料,輸出乙個整數,表示可以坐上過山車的最多組合數。

sample input

6 3 3

1 11 2

1 32 1

2 33 1

0

sample output

3
#include#include#include#include#define rep(i,a,b)  for(int i=a;i<=b;i++)

int k,m,n;

bool e[600][600];//用來儲存誰和誰是想要在一起的

bool vis[600];//標記女生i是否被選(這裡是指在編號為x,因為同乙個男生選乙個女生兩次沒有含義)

int link[600];//表示編號為i的女生被誰帶走,這是乙個全域性變數,不是指當前男生的選擇情況

int ans;

bool dfs(int x)}}

return false;

}void dig()

}int main()

dig();

printf("%d\n",ans);

}}

跟這道題一樣都是模板題的還有hdu1083

HDU 2063 過山車 匈牙利演算法模板

匈牙利演算法模板。大概過程就是對乙個點進行匹配時,嘗試匹配所有與它相連的點。如果這個點沒有被匹配,或者這個點被匹配了,但是匹配它的點可以重新找到乙個匹配點,從而騰出這個點,那麼就可以與這個點匹配。used陣列標記遍歷到的v。如果不標記,增廣過程中乙個點會重複匹配v。最大匹配就是對一邊所有的點嘗試匹配...

HDU 2063 過山車(匈牙利)

題目大意 男生女生一起做過山車,要求必須乙個男生和乙個女生一起做過山車,現在給出了女生分別想和那幾個男生一起做過山車,問能做上過山車的最大組合數。思路分析 求建立二分圖中的最大匹配數,用匈牙利演算法 乙個模板題 實現 include includeint top,ans,by 550 visit 5...

Hdu2063 匈牙利 過山車

problem description rpg girls今天和大家一起去遊樂場玩,終於可以坐上夢寐以求的過山車了。可是,過山車的每一排只有兩個座位,而且還有條不成文的規矩,就是每個女生必須找個個男生做partner和她同坐。但是,每個女孩都有各自的想法,舉個例子把,rabbit只願意和xhd或pq...