• <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 - 21,  comments - 9,  trackbacks - 0
            這個題首先要把輸入的坐標轉化成鄰接矩陣的形式。之后再利用鄰接矩陣使用普里姆算法計算最小生成樹。并對其中的邊進行排序。找出減去S個較大的后最大的那一個。因為較大的那幾個可以用衛星傳輸
            #include<iostream>
            #include<cmath>
            #include<algorithm>
            #include<stdio.h>
            using namespace std;
            typedef struct
            {
             double x;
             double y;
            }point;
            point array[505];
            double len[505][505];
            double kk[505],next[505];
            double re[505];
            int sa,num;
            double dis(point first,point second)
            {
             return sqrt((first.x-second.x)*(first.x-second.x)+(first.y-second.y)*(first.y-second.y));
            }
            void prim(int n)
            {
             int i,j;
              //////////讀入數據完畢。開始構建鄰接矩陣
              for(i=0;i<num;i++)
              {
               for(j=0;j<num;j++)
               {
                len[i][j]=15000000;
               }
              }
              for(i=0;i<num;i++)
              {
               for(j=0;j<num;j++)
               {
                if(i!=j)
                 len[i][j]=dis(array[i],array[j]);
               }
              }
              for(i=0;i<num;i++)
              {
               kk[i]=len[0][i];
               next[i]=0;
              }
              /////////鄰接矩陣構建完畢
              int count=0;i=0;
              while(count<num-1)
              {
               if(next[i]!=-1)
               {
                for(j=0;j<num;j++)
                {
                 if(i!=j&&next[j]!=-1)
                 {
                  if(len[i][j]<kk[j])
                  {
                   kk[j]=len[i][j];
                   next[j]=i;
                  }
                 }
                }
                next[i]=-1;
                double max=999999999;int k;
                for(j=0;j<num;j++)
                {
                 if(kk[j]<max&&next[j]!=-1)
                 {
                  k=j;
                  max=kk[j];
                 }
                }
                re[count]=max;
                i=k;
                count++;
               }
              }
            }
            int main()
            {
             int n;
             cin>>n;
             int i;
             while(n--)
             {
              cin>>sa>>num;
              for( i=0;i<num;i++)
              {
               scanf("%lf%lf",&array[i].x,&array[i].y);
              }
              prim(0);
              sort(re,re+num-1);
              printf("%.2f\n",re[num-1-sa]);
             }
             return 0;
            }
            posted on 2010-08-18 14:39 崔佳星 閱讀(1177) 評論(0)  編輯 收藏 引用
            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲国产精品婷婷久久| 国产99久久精品一区二区| 精品久久久久久国产三级| 欧美日韩精品久久免费| 久久久99精品成人片中文字幕| 婷婷综合久久中文字幕蜜桃三电影 | 国产精品久久久久久五月尺| 一本久久免费视频| 久久久久亚洲av无码专区 | 久久久亚洲欧洲日产国码是AV| 国产激情久久久久影院小草| 国产午夜久久影院| 国产精品99久久不卡| 欧美国产精品久久高清| 欧美熟妇另类久久久久久不卡| 久久精品免费一区二区三区| 久久国产成人亚洲精品影院| 日韩精品无码久久久久久| 亚洲成色999久久网站| 久久久精品国产Sm最大网站| 久久国产劲爆AV内射—百度| .精品久久久麻豆国产精品| 久久精品18| 999久久久无码国产精品| 久久精品国产亚洲AV忘忧草18| 久久成人18免费网站| 久久人搡人人玩人妻精品首页| 国产精品久久久天天影视香蕉| 亚洲AV成人无码久久精品老人| 久久久久久久91精品免费观看| 麻豆一区二区99久久久久| 久久久久久伊人高潮影院| 欧美日韩精品久久久久| 天堂无码久久综合东京热| 国产精品久久久久蜜芽| 久久久久久久人妻无码中文字幕爆 | 欧美伊人久久大香线蕉综合| 久久久久久久久久久| 久久婷婷色综合一区二区| 久久香综合精品久久伊人| 72种姿势欧美久久久久大黄蕉|