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

            HDU 1162 Eddy's picture

            HDU 1162 Eddy's picture

            這個(gè)題目也是典型的最小生成樹算法,跟之前的那個(gè)題目是差不多的,也就是說:給你n個(gè)二維平面點(diǎn),
            讓你添加適當(dāng)?shù)倪叄沟盟械狞c(diǎn)都在同一個(gè)聯(lián)通分支上,也就是說任何點(diǎn)之間都有路徑可以到達(dá)。
            問題規(guī)模不大,直接用矩陣存數(shù)據(jù),利用prim 算法就可以搞定。此時(shí)任意兩點(diǎn)之間的“權(quán)值”就是
            兩點(diǎn)之間的距離。
             1 #include<stdio.h>
             2 #include<stdlib.h>
             3 #include<math.h>
             4 #include<string.h>
             5 const double MAX = 1000000000.0
             6 struct Point
             7 {
             8        double x, y;
             9 }point[101];
            10 
            11 double map[101][101];
            12 int v[101], n;
            13 
            14 double Dis(Point a, Point b)
            15 {
            16        return sqrt((a.x - b.x) * (a.x - b.x) +(a.y - b.y) * (a.y - b.y)); 
            17 
            18 
            19 void Build()
            20 {
            21      memset(map, 0sizeof(map));
            22      for (int i=0; i<n; i++)
            23      {
            24          for (int j=i; j<n; j++)
            25          {
            26              if (i == j) map[i][j] = MAX;
            27              else 
            28              {
            29                    map[j][i] = map[i][j] = Dis(point[i], point[j]);
            30              }
            31          }
            32      }
            33 }
            34 
            35 void MinTree()
            36 {
            37      double sum = 0.0, min;
            38      memset(v, 0sizeof(v));
            39      v[0= 1;
            40      int flag;
            41      for (int i=1; i<n; i++)
            42      {
            43          min = MAX;
            44          for (int j=0; j<n; j++)
            45          {
            46              if (!v[j] && map[0][j] < min)
            47              {
            48                 min = map[0][j];
            49                 flag = j;
            50              }
            51          }
            52          sum += min;
            53          v[flag] = 1;
            54          for (int j=0; j<n; j++)
            55          {
            56              if (!v[j] && map[0][j] > map[flag][j])
            57              {
            58                 map[0][j] = map[flag][j];
            59              }
            60          }
            61      }
            62      printf("%.2lf\n",sum);
            63 }
            64 int main()
            65 {
            66     while (scanf("%d"&n)!= EOF)
            67     {
            68           map[n][n];
            69           point[n];
            70           for (int i=0; i<n; i++)
            71           {
            72               scanf("%lf %lf"&point[i].x, &point[i].y);
            73           }
            74           Build();
            75           MinTree();
            76     }
            77     return 0;
            78 }
            79 


            posted on 2011-07-18 08:42 AK 閱讀(1362) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 最小生成樹和并查集

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            資源連接

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久国产高清字幕中文| 777久久精品一区二区三区无码 | 久久久久九九精品影院| 久久亚洲精品无码观看不卡| 久久人妻AV中文字幕| 91精品国产91久久久久久| 最新久久免费视频| 97久久超碰国产精品2021| 午夜精品久久影院蜜桃| 丰满少妇高潮惨叫久久久| 亚洲色欲久久久久综合网| 久久精品国产秦先生| 伊人久久大香线蕉亚洲五月天| 久久精品免费一区二区三区| 狠狠色狠狠色综合久久| 国产毛片久久久久久国产毛片| 国产69精品久久久久9999APGF| 久久国产热这里只有精品| 狠狠88综合久久久久综合网| 漂亮人妻被中出中文字幕久久 | 久久亚洲中文字幕精品一区| 久久久久人妻精品一区二区三区| 久久人人青草97香蕉| 久久久国产一区二区三区| 国产精品欧美久久久天天影视 | 精品久久久久久久久久中文字幕| 99久久婷婷免费国产综合精品| 亚洲AV无码久久| 久久亚洲美女精品国产精品| 性做久久久久久久| 奇米综合四色77777久久| 久久狠狠爱亚洲综合影院| 久久综合偷偷噜噜噜色| 久久精品视屏| 久久精品一区二区三区中文字幕| 日韩欧美亚洲综合久久影院d3| 97久久国产亚洲精品超碰热| 国产成人久久激情91| 亚洲综合久久综合激情久久 | 66精品综合久久久久久久| 国产精品免费久久|