HDU 2063 過山車 演算法學習 匈牙利演算法

2021-07-27 02:34:11 字數 1111 閱讀 1435

題目:

problem description

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

input

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

output

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

sample input

6 3 3

1 11 2

1 32 1

2 33 10

sample output

3

匈牙利演算法大致原理:

這道題樣例資料的大致示意圖:

詳細思路見**:

//by sean chen

#include #include #include using namespace std;

int pairs,ngirl,nboy,a,b;

int map[505][505],boy[505],used[505];

int findans(int pos) //配對}}

return 0;

}int main()

int ans=0;

for (int i=1;i<=ngirl;i++) //每一次迴圈幫助乙個女生尋找配對

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

scanf("%d",&pairs);

}return 0;

}

hdu 2063 過山車(匈牙利演算法)

典型的匈牙利演算法入門題 匈牙利演算法不明白的話推薦看這篇部落格,博主寫的很棒,看了完全可以明白。problem description rpg girls今天和大家一起去遊樂場玩,終於可以坐上夢寐以求的過山車了。可是,過山車的每一排只有兩個座位,而且還有條不成文的規矩,就是每個女生必須找個個男生做...

HDU 2063 過山車 匈牙利演算法)

題目鏈結 裸模版題,學習匈牙利演算法。看了很多,大體理解了演算法過程了。至於思想,以後慢慢體會。解釋一下樣例的過程把,從1號女找到1號男,linker記錄下女生編號。然後再找二號女,發現和一號男有關係,去再搜一號男的linker1號女是否可以換乙個男的,ok,找到了,1號女和2號男連起來。再找三號女...

HDU 2063 過山車(匈牙利)

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