匈牙利演算法 小狗散步

2021-09-30 06:46:44 字數 746 閱讀 8623

小狗散步

grant喜歡帶著他的小狗pandog散步。grant以一定的速度沿著固定路線走,該路線可能自交。pandog喜歡遊覽沿途的景點,不過會在給定的n個點和主人相遇。小狗和主人同時從(x1,y1)點出發,並同時在(xn,yn)點匯合。小狗的速度最快是grant的兩倍。當主人從乙個點以直線走向另乙個點時,pandog跑向乙個它感興趣的景點。pandog每次與主人相遇之前最多隻去乙個景點。

你現在的任務是:為pandog尋找一條路線(有可能與主人的路線部分相同),使它能夠遊覽最多的景點,並能夠準時與主人在給定地點相遇或者匯合。

輸入輸入檔案第一行是兩個整數n和m(  1≤n,m≤100 );

輸入檔案第二行的n個座標給出了grant的散步路線,即pandog和主人相遇地點;

輸入檔案第三行的m個座標給出了所有pandog感興趣的景點。

所有輸入的座標均不相同,且絕對值不超過1000。

輸出輸出小狗的移動路線。

第一行是經過的點數,第二行依次為經過的點的座標(直角座標系)

樣例輸入

4    5

1    4    5    7    5    2    -2    4

-4    -2    3    9    1    2    -1    3    8    -3

樣例輸出

61    4    3    9    5    7    5    2    1    2    -2    4

hit:答案不一定唯一。

匈牙利演算法

匈牙利演算法 edmonds演算法 步聚 1 首先用 標記x中所有的非m頂點,然後交替進行步驟 2 3 2 選取乙個剛標記 用 或在步驟 3 中用 yi 標記 過的x中頂點,例如頂點xi,如果xi與y為同一非匹配邊的兩端點,且在本步驟中y尚未被標記過,則用 xi 去標記y中頂點y。重複步驟 2 直至...

匈牙利演算法

匈牙利演算法用來解決二分圖的最大匹配問題。乙個典型的最大匹配問題的描述如下 乙個公司有n項工作,m個員工。每個員工能勝任n項工作中的幾項 0 n 工作。問題是,如何分配才能使得被處理的工作數最大。當然,如果公司裡人員很多,每項工作都有很多員工可以勝任,那麼使每項工作都有人處理的方案是顯而易見的。但遇...

匈牙利演算法

二分圖匹配的演算法,二分圖就是把圖上的點分成兩個互不相交的點集,而圖中的邊的端點只能分別屬於這兩個點集.二分圖的匹配,就是婚配問題,左邊的點集男性,右邊的點集女性,然後相互配對 一夫一妻 最大匹配就是讓好事最多.匈牙利演算法可以實現這個東西.匈牙利演算法怎麼實現的這個東西.這個比較多.如下 incl...