• <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>

            我希望你是我獨家記憶

            一段永遠封存的記憶,隨風而去
            posts - 263, comments - 31, trackbacks - 0, articles - 3
               :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

            ZJU--1137--二部圖匹配

            Posted on 2008-08-01 18:32 Hero 閱讀(222) 評論(0)  編輯 收藏 引用 所屬分類: 代碼如詩--ACM

             

             1 /*
             2 ID: wangzha4
             3 LANG: C++
             4 TASK: ZJU1137
             5 */
             6 
             7 /* Accepted 1137 C++ 00:04.35 664K */
             8 //二部圖匹配
             9 
            10 #include <stdio.h>
            11 #include <stdlib.h>
            12 #include <string.h>
            13 #include <ctype.h>
            14 #define llong unsigned long long 
            15 #define unint unsigned int
            16 #define printline  printf( "\n" ) 
            17 
            18 const int INF = 1000000 ;
            19 const int size = 500 ;
            20 
            21 int inn, inm ; 
            22 bool link[size][size] ;
            23 
            24 int Binmatch( int inn, int inm )
            25 {
            26     int matchnum = 0 ; int dn_node ;
            27     int queue[size*10] ; int head=0, tail = 0 ;//定義隊列
            28     int upmatch[size], dnmatch[size] ; int prev[size] ;
            29     memset( upmatch, -1sizeof(upmatch) ) ;
            30     memset( dnmatch, -1sizeof(dnmatch) ) ;
            31 
            32     forint i=1; i<=inn; i++ ) {
            33         forint j=1; j<=inm; j++ )    prev[j] = -2 ;
            34         head = tail = 0 ;
            35 
            36         forint j=1; j<=inm; j++ )    if( link[i][j] )
            37         { prev[j] = -1 ; queue[tail++= j ; }
            38 
            39         while( head < tail ) {
            40             dn_node = queue[head] ;
            41             if-1 == dnmatch[dn_node] )    break ;
            42             head++ ;
            43             forint j=1; j<=inm; j++ ) if-2==prev[j]&&link[dnmatch[dn_node]][j] )
            44             { prev[j] = dn_node ; queue[tail++= j ; }
            45         }
            46 
            47         if( head == tail )    continue ;
            48         while( prev[dn_node] > -1 ) {
            49             upmatch[dnmatch[prev[dn_node]]] = dn_node ;
            50             dnmatch[dn_node] = dnmatch[prev[dn_node]] ;
            51             dn_node = prev[dn_node] ;
            52         }
            53 
            54         dnmatch[dn_node] = i ; upmatch[i] = dn_node ;
            55         matchnum++ ;
            56     }
            57 
            58     return matchnum ;
            59 }
            60 
            61 int main()
            62 {
            63     //freopen( "frac1.in", "r", stdin ) ;
            64     //freopen( "frac1.out","w",stdout ) ;
            65 
            66     int sn, en, numlink ;
            67     while( scanf( "%d",&inn ) != EOF )
            68     {
            69         memset( link, falsesizeof(link) ) ; inm = inn ;
            70 
            71         forint k=1; k<=inn; k++ ) {
            72             scanf( "%d: (%d) "&sn, &numlink ) ; sn++ ;
            73             forint i=1; i<=numlink; i++ ) {
            74                 scanf( "%d"&en ) ; en++ ; link[sn][en] = true ;
            75             }//data input
            76         }
            77 
            78         int matchnum = Binmatch( inn, inm ) ;
            79 
            80         printf( "%d\n", inn-matchnum/2 ) ;
            81     }
            82 
            83     return 0 ;
            84 }
            85 
            91精品婷婷国产综合久久| 亚洲伊人久久综合影院| 亚洲av日韩精品久久久久久a| 久久精品成人欧美大片| 色婷婷综合久久久久中文一区二区| 日韩AV无码久久一区二区| 久久精品免费观看| 久久无码AV中文出轨人妻| 精品久久久久久无码专区不卡| 精品国产乱码久久久久久浪潮| 麻豆av久久av盛宴av| 久久狠狠色狠狠色综合| 久久精品一本到99热免费| 很黄很污的网站久久mimi色| 亚洲午夜无码久久久久| 久久黄视频| 亚洲狠狠综合久久| 久久亚洲春色中文字幕久久久| 久久久久无码中| 93精91精品国产综合久久香蕉 | 国产毛片欧美毛片久久久| 久久国产成人精品麻豆| 99久久这里只精品国产免费| 99久久伊人精品综合观看| 久久综合狠狠综合久久| 伊人色综合久久天天网| 精品久久国产一区二区三区香蕉 | 国产香蕉久久精品综合网| 麻豆精品久久精品色综合| 精品久久无码中文字幕| 日韩AV无码久久一区二区| 国内精品久久久久影院薰衣草 | 久久综合一区二区无码| 成人精品一区二区久久| 国内精品久久九九国产精品| 久久国产色AV免费观看| 久久久久成人精品无码中文字幕 | 久久精品九九亚洲精品| 久久久噜噜噜久久中文福利| 看久久久久久a级毛片| 精品免费tv久久久久久久|