• <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ù),然后就產生了一張抽象的權值圖
            然后prim  回復  更多評論
              
            国产无套内射久久久国产| 伊人久久大香线蕉av不变影院| 国产精品美女久久久久| 国产精品99久久久久久猫咪| 亚洲国产精品狼友中文久久久| 色综合久久中文字幕无码| 久久最近最新中文字幕大全 | 亚洲国产精品久久久久久| 青青青青久久精品国产h久久精品五福影院1421 | 亚洲午夜久久影院| 亚洲中文字幕无码久久综合网| 久久97久久97精品免视看| 久久丫精品国产亚洲av不卡| 久久久中文字幕日本| 一级做a爰片久久毛片16| 97精品依人久久久大香线蕉97 | 香蕉99久久国产综合精品宅男自 | 精品久久久一二三区| 国产99久久久国产精品~~牛| 日韩精品久久久肉伦网站 | 久久av高潮av无码av喷吹| 国内精品久久久久影院一蜜桃| 久久久无码精品亚洲日韩蜜臀浪潮| 999久久久免费国产精品播放| 久久久精品人妻一区二区三区四| 久久婷婷五月综合97色直播| 亚洲国产精品嫩草影院久久| 欧美性大战久久久久久| 老司机午夜网站国内精品久久久久久久久 | 久久亚洲AV成人无码国产| 中文字幕无码精品亚洲资源网久久| 少妇被又大又粗又爽毛片久久黑人| 伊人色综合久久| 国产精品欧美亚洲韩国日本久久| 久久亚洲国产中v天仙www | 亚洲AV日韩精品久久久久久| 久久精品国产乱子伦| 伊人久久大香线蕉成人| 欧美亚洲国产精品久久蜜芽| 亚洲综合婷婷久久| 久久精品国产国产精品四凭|