• <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>
            #include <iostream>
            #include 
            <vector>
            #include 
            <algorithm>

            using namespace std;

            struct Edge
            {
                
            int row;
                
            int column;
                
            int value;

                Edge()
                
            {}

                Edge( 
            int a, int b, int c )
                    :row(a),column(b),value(c)
                
            {}
            }
            ;

            bool operator<( Edge const& Itema, Edge const& Itemb )
            {
                
            return Itema.value> Itemb.value;
            }


            vector
            <Edge> graph;
            int          visite[2001];
            char         ch[2001][8];

            int find( int x )
            {
                
            if ( x!= visite[x] )
                    
            return find( visite[x] );

                
            return x;
            }


            int distance( char str1[8], char str2[8] )
            {
                
            int num= 0;

                
            for ( int i= 0; i< 8++i )
                    
            if ( str1[i]!= str2[i] )
                        num
            ++;

                
            return num;
            }


            int main()
            {
                
            int n;

                
            while ( scanf("%d",&n), n )
                
            {
                    
            for ( int i= 0; i< n; ++i )
                        scanf(
            "%s",ch[i] );

                    graph.reserve ( n
            + 1 );

                    
            for ( int i= 0; i< n; ++i )
                    
            {
                        
            for ( int j= 0; j< i; ++j )
                            graph.push_back (  Edge( j,i,distance( ch[i], ch[j] ) ) );
                
                        visite[i]
            = i;
                    }


                    make_heap( graph.begin (), graph.end () );
                    
            int sum= 0;
                    
            int num= 1;

                    
            while ( num< n )
                    
            {
                        
            int u,v;
                        
            if ( (u= find(graph[0].column))!= (v= find(graph[0].row ) ) )
                        
            {
                            sum
            += graph[0].value;
                            visite[v]
            = u;
                            num
            ++;
                        }


                        pop_heap( graph.begin (), graph.end () );
                        graph.pop_back ();
                    }


                    printf( 
            "The highest possible quality is 1/%d.\n", sum );

                    graph.clear ();
                }


                
            return 0;
            }
            posted on 2008-11-06 12:00 Darren 閱讀(236) 評論(3)  編輯 收藏 引用

            評論:
            # re: Pku 1789 Truck History 2008-11-06 12:42 | infinity
            這題好像就是一個最小生成樹吧!  回復  更多評論
              
            # re: Pku 1789 Truck History 2008-11-06 13:02 | Darren
            @infinity
            這是最小生成樹, 我用的是kruskal算法  回復  更多評論
              
            # re: Pku 1789 Truck History 2008-11-06 14:03 | ******
            我的做法:
            串兩兩比較,匹配他們,統(tǒng)計不同的字符數(shù),然后就產(chǎn)生了一張抽象的權(quán)值圖
            然后prim  回復  更多評論
              
            无码人妻精品一区二区三区久久 | 久久不见久久见免费视频7| 国内精品伊人久久久影院| 国内精品久久国产| 久久99国产精品久久久| 久久播电影网| 精品久久久噜噜噜久久久| 久久久精品久久久久久| 国内精品综合久久久40p| 久久99久久成人免费播放| 久久精品国产亚洲AV不卡| 成人国内精品久久久久影院VR| 久久久精品国产| 久久夜色精品国产亚洲| 久久久久精品国产亚洲AV无码| 亚洲欧美精品伊人久久| 亚洲AV无码久久| 久久人做人爽一区二区三区| 国内精品久久久久久久久电影网| 久久亚洲欧美国产精品 | 无码八A片人妻少妇久久| 人人狠狠综合久久亚洲婷婷| 久久WWW免费人成一看片| 亚洲精品高清一二区久久| 久久精品?ⅴ无码中文字幕| 伊人丁香狠狠色综合久久| 久久综合给合久久狠狠狠97色69| 亚洲欧美国产精品专区久久 | 国产精品丝袜久久久久久不卡| 国内精品久久久久影院免费| 亚洲精品国产美女久久久| 2021国产精品午夜久久| 狠狠色噜噜色狠狠狠综合久久| 亚洲精品午夜国产va久久| 狠狠色丁香婷婷久久综合| 色狠狠久久综合网| 久久久久久久91精品免费观看| 思思久久99热免费精品6| 中文精品久久久久人妻| 久久综合亚洲色一区二区三区| 久久只这里是精品66|