青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

The Fourth Dimension Space

枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

匹配問題學習小結(POJ)

臨行上海,決定把最近研究過的各種匹配題做個匯總,原因是這樣既可以鞏固自己對匹配問題的掌握,又可以借此復習一下匹配問題的各種外在表現形式。我認為,如果比賽中出到匹配,出題者在問題的算法上大做文章的可能性不大,大多數出題者一定會挖空心思來設計一個讓你眼花繚亂的背景,借此來隱藏匹配問題的實質!

二分圖最小覆蓋的Konig定理及其證明

二分圖:

頂點可以分類兩個集合X和Y,所有的邊關聯在兩個頂點中,恰好一個屬于集合X,另一個屬于集合Y。

最小覆蓋:

最小覆蓋要求用最少的點(X集合或Y集合的都行)讓每條邊都至少和其中一個點關聯。可以證明:最少的點(即覆蓋數)=最大匹配數

Konig定理:

二分圖的最小頂點覆蓋數等于最大匹配數。

 證明:

 為主便敘述,假設G分為左邊X和右邊Y兩個互不相交的點集。。。。。。

假設G經過匈牙利算法后找到一個最大匹配M,則可知G中再也找不到一條增廣路徑。

標記右邊未匹配邊的頂點,并從右邊未匹配邊的頂點出發,按照邊:未匹配->匹配->未匹配...,的原則標記途中經過的頂點,則最后一條經過的邊必定為匹配邊。重復上述過程,直到右邊不再含有未匹配邊的點。

記得到的左邊已標記的點和右邊未標記的點為S, 以下證明S即為所求的最小頂點集。

1| S | == M 
    顯然,左邊標記的點全都為匹配邊的頂點,右邊未標記的點也為匹配邊的頂點。因此,我們得到的點與匹配邊一一對應。

2S能覆蓋G中所有的邊。

       上途S中點所得到的邊有以下幾種情況:

       1)左右均標記;

       2)左右均無標記;

       3)左邊標記,右邊未標記;

       若存在一條邊e不屬于S所覆蓋的邊集,則e 左邊未標記右邊標記。

如果e不屬于匹配邊,那么左端點就可以通過這條邊到達(從而得到標記);如果e屬于匹配邊,那么右端點不可能是一條路徑的起點,于是它的標記只能是從這條邊的左端點過來的左端點就應該有標記。

 

3S是最小的覆蓋。

       因為要覆蓋這M條匹配邊至少就需要M個點。

轉自:http://yejingx.ycool.com/post.2801156.html#



在一個PXP的有向圖中,路徑覆蓋就是在圖中找一些路經,使之覆蓋了圖中的所有頂點,且任何一個頂點有且只有一條路徑與之關聯;(如果把這些路徑中的每條路徑從它的起始點走到它的終點,那么恰好可以經過圖中的每個頂點一次且僅一次);如果不考慮圖中存在回路,那么每每條路徑就是一個弱連通子集.

由上面可以得出:

1.一個單獨的頂點是一條路徑;

2.如果存在一路徑p1,p2,......pk,其中p1 為起點,pk為終點,那么在覆蓋圖中,頂點p1,p2,......pk不再與其它的頂點之間存在有向邊.

最小路徑覆蓋就是找出最小的路徑條數,使之成為P的一個路徑覆蓋.

路徑覆蓋與二分圖匹配的關系:

最小路徑覆蓋=|P|-最大匹配數;

其中最大匹配數的求法是把P中的每個頂點pi分成兩個頂點pi'與pi'',如果在p中存在一條pi到pj的邊,那么在二分圖P'中就有一條連接pi'與pj''的無向邊;這里pi' 就是p中pi的出邊,pj''就是p中pj 的一條入邊;

對于公式:最小路徑覆蓋=|P|-最大匹配數;可以這么來理解;

如果匹配數為零,那么P中不存在有向邊,于是顯然有:

最小路徑覆蓋=|P|-最大匹配數=|P|-0=|P|;即P的最小路徑覆蓋數為|P|;

P'中不在于匹配邊時,路徑覆蓋數為|P|;

如果在P'中增加一條匹配邊pi'-->pj'',那么在圖P的路徑覆蓋中就存在一條由pi連接pj的邊,也就是說pi與pj 在一條路徑上,于是路徑覆蓋數就可以減少一個;

如此繼續增加匹配邊,每增加一條,路徑覆蓋數就減少一條;直到匹配邊不能繼續增加時,路徑覆蓋數也不能再減少了,此時就有了前面的公式;但是這里只 是說話了每條匹配邊對應于路徑覆蓋中的一條路徑上的一條連接兩個點之間的有向邊;下面來說明一個路徑覆蓋中的每條連接兩個頂點之間的有向邊對應于一條匹配 邊;

與前面類似,對于路徑覆蓋中的每條連接兩個頂點之間的每條有向邊pi--->pj,我們可以在匹配圖中對應做一條連接pi'與pj''的邊, 顯然這樣做出來圖的是一個匹配圖(這一點用反證法很容易證明,如果得到的圖不是一個匹配圖,那么這個圖中必定存在這樣兩條邊  pi'---pj'' 及 pi' ----pk'',(j!=k),那么在路徑覆蓋圖中就存在了兩條邊pi-->pj, pi--->pk ,那邊從pi出發的路徑就不止一條了,這與路徑覆蓋圖是矛盾的;還有另外一種情況就是存在pi'---pj'',pk'---pj'',這種情況也類似可證);

至此,就說明了匹配邊與路徑覆蓋圖中連接兩頂點之間邊的一一對應關系,那么也就說明了前面的公式成立!

轉自:http://hi.baidu.com/cjhh314/blog/item/ded8d31f15d7510c304e1591.html





POJ 1469 COURSES
學生選課問題,基礎匹配問題。
有p節課,n個學生,每節課可以由指定的幾個學生參加,但是每個學生只能參加一節課。現在問能不能找到一些學生使得他們:
1.每個學生匹配不同的一節課
2.每節課匹配一個學生。
就是求個最大匹配,看看匹配數是不是等于課程數。如果相等不就滿足要求了么.


POJ 3041 Asteroids
在N*N的平面上有K顆小行星,現在你要摧毀他們,你的每一發子彈可以摧毀同一行,或者是同一列上的小行星,現在問你最少要多少子彈才能摧毀所有的小行星?
構圖:如果在i行j列上有一顆小行星 則graph[i][j]=1,再求最大匹配即可。
這一題用到的結論是 :最小頂點覆蓋 = 最大匹配(最小覆蓋要求用最少的點(X集合或Y集合的都行)讓每條邊都至少和其中一個點關聯)


POJ 2771 Guardian of Decency
老師帶學生出去旅游,但是擔心學生會發生戀愛關系,所以帶出去的學生至少要滿足以下要求之中的一個:
1.身高相差40cm以上
2.同性
3.喜歡的音樂風格不同
4.喜歡的運動相同
問最多可以帶出去多少學生?

個人感覺如果有男有女,就很有可能是二分匹配了。
這道題我們反過來想,如果將所有可能發生戀愛關系的男女配對,那么可以帶出去的人數應該等于這個二分圖的最大獨立集。
根據公式: 最大獨立集=頂點數(包括X和Y)-最大匹配
求一次匹配即可。

POJ 3020 Antenna Placement
題目的意思大致就是,一個矩形中,有N個城市,現在這n個城市都要覆蓋無線,若放置一個基站,那么它至多可以覆蓋相鄰的兩個城市。
問至少放置多少個基站才能使得所有的城市都覆蓋無線?
構圖:行掃描所有城市,編號,如果有城市相鄰就連一條邊,當然如果3和4相鄰,首先graph[3][4]=1,當掃描到4時graph[4][3]也連一條邊,最后只需要取一半即可.求最大匹配的一半,這樣可以得到所有2個相鄰城市被一個基站覆蓋所需要的基站數。然后再加上獨立的那些基站即可。
公式是:N-最大匹配(代表所有可以和相鄰城市配對的城市數)+最大匹配/2=N-最大匹配/2;

POJ 1325 Machine Schedule
兩臺機器A,B,A有n個模式,B有m個模式,現在有k個工作,其中每一個工作可以由A或B中的一個特定模式來完成,但是切換機器的模式要重新啟動一次,問最少要重啟多少次機器才能完成所有工作?
A,B兩臺機器構成一個二分圖,在之間按照給出的條件連邊。這樣想,每一個工作其實是由一條邊來代表的,那么我們只要用最少的頂點來覆蓋所有的邊即可。這就是最小覆蓋。
根據公式:最小覆蓋=最大匹配;
對原二分圖做一次最大匹配即可。
對了,針對這個題還有一個問題,就是起始狀態下是在mode 0的,如果在這個模式下工作,是不需要切換mode的,所以只要有工作是在mode 0下(不管是在A還是在B),對這個工作就不連邊,默認它不占匹配數!記得當時就是錯在這里,轉化很重要啊!

POJ 2226 Muddy Fields(*)
這個題的原型應該是Asteroids的變種,剛看了這道題,一眼就看出了是最小覆蓋,看來我理解了最小覆蓋的內在含義了。
農夫John的養牛場,是一個R 行C 列的矩形,一場大雨后,養牛場低洼的地方都有了積水。John 的牛都很嬌貴的,他們吃草的時候,不想把他們的蹄子給弄臟了。為了不讓牛兒們把它們的蹄子弄臟,John 決定把有水的地方鋪上木板。他的木板是寬度為1,長度沒有限制的。 

他想用最少數目的木板把所有有水的低洼處給覆蓋上,前提是木板不能覆蓋草地,但是可以重疊。
Sample:
4 4
*.*.
.***
***.
..*.

把行里面連在一起的坑連起來視為一個點,即一塊橫木板,編上序號,Sample則轉化為:

1 0 2 0
0 3 3 3
4 4 4 0
0 0 5 0

把這些序號加入X集合,再按列做一次則為:

1 0 4 0
0 3 4 5
2 3 4 0
0 0 4 0

同樣加入Y集合,一個坑只能被橫著的或者被豎著的木板蓋住,將原圖的坑的也標上不同的序號,一共九個坑

1 . 2 .
. 3 4 5
67 8 .
. . 9 .

比如7號坑可以被橫著的4號木板和豎著的3號木板蓋住,把每個點的對應的橫木板(4)和豎木板(3)中間連一條邊的話,則問題轉化為 找盡量少的邊把這些點都蓋住,根據定理便是求最大匹配數.

POJ 1422 Air Raid 空襲!
典型的最小路徑覆蓋題,城市之間單向相連,無環!問最少用多少個傘兵能遍歷這張圖。
根據定理:最小路徑覆蓋=頂點數-最大匹配數


POJ 3216 Repairing Company(*)
題目說的是一個城市里面有Q個點,有M項工作,每個工作有個工作地點pi,最晚開始時間ti,和工作需要的時間di.
從城市中的任意一個點到另一個點的直接時間又一個矩陣給出。不連通為-1.注意間接聯通是被允許的。
我再這個題上哉了2次,汗啊。我總是以為二分圖的頂點時基于城市中的點的,但實際上時基于工作。

這一題首先對給定的圖做一次floyd,這樣就能求出兩個點之間最少需要走的時間。
然后判斷兩個工作之間是否存在先后關系

for(i=1;i<=m;i++)
    
{

        scanf(
"%d%d%d",&work[i].p,&work[i].t,&work[i].d);
    }

    
for(i=1;i<=m;i++)
        
for(j=1;j<=m;j++)
        
{

            
if(work[i].t+work[i].d+g[work[i].p][work[j].p]<=work[j].t)
                graph[i][j]
=1;
        }


最后做最小路徑覆蓋即可。注意這里的頂點數應該是工作數!這一題值得重點注意!!!
printf("%d\n",m-Hungary(m,graph));

POJ 2594 Treasure Exploration(*)
太經典了,最小路徑覆蓋之變形!如果題目中有暗示此圖無環且路徑是單向的話,必然是最小路徑覆蓋無疑!

這個題的題目意思和那個傘兵題差不多,但是傘兵走過的路徑是可以交叉的,這樣我們先做一個傳遞閉包,然后再連邊做最小路徑覆蓋即可。

POJ 1034 The dog task
一個很明顯的二分匹配,不過和計算幾何聯系起來了。這道題目建圖很巧妙.以BOB行走的n-1條有向線段為X,m個景點為Y,二分匹配。


暫時總結到這,對于匹配問題,我只想說,匹配問題,你真的很"2"!

posted on 2009-10-21 17:34 abilitytao 閱讀(2353) 評論(1)  編輯 收藏 引用

評論

# re: 匹配問題學習小結(POJ) 2010-01-11 02:27 onlys_c

不錯。。在我的博客上用下你的題目分析哈。。  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            尤妮丝一区二区裸体视频| 久久躁狠狠躁夜夜爽| 久久久久国产精品www| 亚洲一区二区视频| 中文精品视频| 小处雏高清一区二区三区| 欧美淫片网站| 噜噜噜躁狠狠躁狠狠精品视频 | 欧美自拍偷拍| 免费亚洲婷婷| 欧美日韩在线观看一区二区三区| 国产精品亚洲一区| 尤物九九久久国产精品的分类| 亚洲美女尤物影院| 欧美一区二区福利在线| 久久一区二区视频| 日韩视频在线观看免费| 欧美影院成年免费版| 欧美国产激情二区三区| 国产伦精品一区二区三区高清版| 亚洲国产日韩在线| 亚洲欧美日韩第一区| 猛干欧美女孩| 亚洲综合三区| 欧美精品久久久久久久久久| 亚洲欧美乱综合| 亚洲大片在线观看| 亚洲一区二区视频在线| 久久久视频精品| 亚洲三级视频在线观看| 午夜精品久久久久久久久久久| 免费观看成人www动漫视频| 国产精品日韩久久久| 亚洲毛片av在线| 久久精品在线视频| 亚洲一区二区三区精品动漫| 欧美成人在线网站| 伊人狠狠色j香婷婷综合| 亚洲欧美韩国| 亚洲精品一区二区三区在线观看| 久久久精彩视频| 国产欧美亚洲一区| 亚洲一区二区三区免费观看 | 亚洲永久免费视频| 久久一二三四| 欧美一区二区成人6969| 国产精品久久久久久久久借妻| 亚洲乱码国产乱码精品精98午夜| 欧美中在线观看| 一本色道久久88综合日韩精品| 欧美v亚洲v综合ⅴ国产v| 在线播放日韩| 狂野欧美性猛交xxxx巴西| 午夜精品久久久久影视 | 国产一区二区视频在线观看 | 欧美日本国产精品| 亚洲精品一区在线| 欧美激情视频一区二区三区免费| 久久精品人人做人人爽电影蜜月| 国产精品人人爽人人做我的可爱| 亚洲一区二区三区777| 日韩五码在线| 欧美三级网址| 翔田千里一区二区| 亚洲一区二区三区涩| 国产精品日韩欧美一区二区三区 | 久久免费精品日本久久中文字幕| 国产欧美一区二区精品忘忧草| 午夜久久美女| 欧美一二三区精品| 国产亚洲欧美另类一区二区三区| 久久久水蜜桃| 久久久久久久久蜜桃| 国产精品国产a| 欧美日韩一区二区三区在线视频 | 另类激情亚洲| 亚洲精品孕妇| 99国产精品| 国产性色一区二区| 免费成人网www| 欧美黑人多人双交| 亚洲女性裸体视频| 性欧美video另类hd性玩具| 亚洲第一精品夜夜躁人人爽| 亚洲欧洲精品一区二区三区 | 一本一本a久久| 中文精品视频一区二区在线观看| 国产麻豆日韩| 女人色偷偷aa久久天堂| 欧美日韩色一区| 欧美一进一出视频| 免费观看30秒视频久久| 亚洲午夜av电影| 久久精品国产欧美亚洲人人爽| 亚洲国产三级| 亚洲欧美精品在线观看| 亚洲国产精品尤物yw在线观看| 亚洲精品日韩一| 国产一区 二区 三区一级| 亚洲第一狼人社区| 国产美女精品| 最新成人av网站| 国产日产高清欧美一区二区三区| 欧美freesex8一10精品| 国产精品午夜在线观看| 欧美粗暴jizz性欧美20| 国产精品一区二区久久国产| 欧美华人在线视频| 国产拍揄自揄精品视频麻豆| 亚洲人www| 欧美日韩国产在线观看| 欧美成年网站| 国产精品青草久久久久福利99| 亚洲国产你懂的| 国产主播一区二区| 亚洲欧美日韩爽爽影院| 99国产精品久久久久久久成人热| 久久激情视频| 欧美亚洲日本国产| 国产精品久久久久久久久久妞妞 | 亚洲二区在线视频| 韩日欧美一区二区| 亚洲中字黄色| 亚洲自拍电影| 欧美日本国产| 亚洲精品国精品久久99热| 一区二区在线免费观看| 欧美一区二区国产| 欧美一级片一区| 欧美色欧美亚洲高清在线视频| 欧美韩日视频| 一卡二卡3卡四卡高清精品视频| 亚洲国产欧美日韩精品| 亚洲香蕉在线观看| 欧美日韩精品不卡| 亚洲精品黄色| 久久av最新网址| 亚洲激情另类| 国产精品视频一| 蜜桃久久精品一区二区| 亚洲欧美成人综合| 欧美成人嫩草网站| 欧美在线播放一区二区| 亚洲激情视频网| 国产日韩欧美麻豆| 欧美精品二区| 久久婷婷国产综合尤物精品| 99这里只有精品| 亚洲盗摄视频| 久久成人羞羞网站| 亚洲一区二区三区精品在线观看| 在线观看一区二区精品视频| 国产日韩精品视频一区| 欧美日韩大陆在线| 美女日韩欧美| 欧美在线播放| 亚洲免费在线视频一区 二区| 亚洲国产精品va在线看黑人| 麻豆freexxxx性91精品| 久久电影一区| 午夜久久电影网| 亚洲视频高清| 99国产精品国产精品久久| 亚洲高清不卡一区| 黄色成人在线免费| 国产欧美一区视频| 国产精品久久久久久久久久免费看 | 一区二区三区成人| 亚洲黄色有码视频| 欧美国产欧美亚洲国产日韩mv天天看完整| 午夜在线精品偷拍| 亚洲在线观看免费视频| 一本到高清视频免费精品| 亚洲伦理久久| 亚洲美女精品成人在线视频| 亚洲清纯自拍| 亚洲国产日韩一区| 亚洲免费久久| 亚洲美女视频在线观看| 99精品福利视频| 日韩亚洲欧美成人一区| 一本色道久久综合亚洲精品高清 | 久久精品理论片| 久久激情五月激情| 久久在线免费观看| 免费成人高清在线视频| 欧美韩国日本一区| 欧美精品导航| 欧美性猛交xxxx乱大交蜜桃| 国产精品v欧美精品v日本精品动漫 | 国产日韩欧美视频在线| 国产午夜一区二区三区| 国产日韩精品视频一区| 黄色成人小视频| 亚洲国产天堂久久国产91| 一本色道久久88亚洲综合88| 亚洲午夜精品一区二区| 久久精品二区| 欧美刺激性大交免费视频| 亚洲精品国产欧美|