<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      2021-08-03

      20:31:13

      鏈接:

      https://www.luogu.com.cn/problem/P2212

      題目詳情:

      Due to a lack of rain, Farmer John wants to build an irrigation system to send water between his N fields (1 <= N <= 2000). Each field i is described by a distinct point (xi, yi) in the 2D plane,with 0 <= xi, yi <= 1000. The cost of building a water pipe between two fields i and j is equal to the squared Euclidean distance between them:

      (xi - xj)^2 + (yi - yj)^2

      FJ would like to build a minimum-cost system of pipes so that all of his fields are linked together -- so that water in any field can follow a sequence of pipes to reach any other field.Unfortunately, the contractor who is helping FJ install his irrigation system refuses to install any pipe unless its cost (squared Euclidean

      length) is at least C (1 <= C <= 1,000,000).

      Please help FJ compute the minimum amount he will need pay to connect all his fields with a network of pipes.

      給定 n 個點,第 個點的坐標為 (xi?,yi?),如果想連通第 i 個點與第 j 個點,需要耗費的代價為兩點的距離。第 i 個點與第 j 個點之間的距離使用歐幾里得距離進行計算,即:

      (xi??xj?)^2+(yi??yj?)^2

      我們規定耗費代價小于 c 的兩點無法連通,求使得每兩點都能連通下的最小代價,如果無法連通輸出 -1。

      輸入格式

      * Line 1: The integers N and C.

      * Lines 2..1+N: Line i+1 contains the integers xi and yi.

      第一行兩個整數 n,cn,c 代表點數與想要連通代價不能少于的一個數。
      接下來 n 行每行兩個整數 xi?,yi? 描述第 i 個點。

      輸出格式

      * Line 1: The minimum cost of a network of pipes connecting the

      fields, or -1 if no such network can be built.

      一行一個整數代表使得每兩點都能連通下的最小代價,如果無法連通輸出 -1

      輸入輸出樣例

      輸入 #1
      3 11
      0 2
      5 0
      4 3
      輸出 #1
      46

      說明/提示

      INPUT DETAILS:

      There are 3 fields, at locations (0,2), (5,0), and (4,3). The contractor will only install pipes of cost at least 11.

      OUTPUT DETAILS:

      FJ cannot build a pipe between the fields at (4,3) and (5,0), since its cost would be only 10. He therefore builds a pipe between (0,2) and (5,0) at cost 29, and a pipe between (0,2) and (4,3) at cost 17.

      Source: USACO 2014 March Contest, Silver

      數據規模與約定

      對于 100% 的數據,1n2000,0xi?,yi?1000,1c10^6。

      題目分析:

      這是一道prim算法題,我們可以利用prim算法的模板,加上題目的限制條件兩點距離不得小于c,就可以解出該題。

      話不多說直接上代碼吧

       

      #include<iostream>
      #include<cmath>
      using namespace std;
      const int N=2005;
      const int INF=1e8;
      int n,c;
      struct Node{
          int x,y;
      }node[N];
      int g[N][N];//每個點之間的距離
      int dist[N];
      bool st[N];
      int distance(int x1,int y1,int x2,int y2){
          int t=pow((x1-x2),2)+pow((y1-y2),2);
          return t;
      }
      
      int Prim(){
          int res=0;
          for(int i=0;i<n-1;i++){
              for(int j=i+1;j<n;j++){
                  int x1=node[i].x,y1=node[i].y,x2=node[j].x,y2=node[j].y;
                  int t=distance(x1,y1,x2,y2);
                  if(t>=c)g[i][j]=g[j][i]=t;
                  else g[i][j]=g[j][i]=INF;
              }
          }
          for(int i=0;i<n;i++){
              int t=-1;
              for(int j=0;j<n;j++){
                  if(!st[j]&&(t==-1||dist[t]>dist[j]))t=j;
              }
              if(i&&dist[t]==INF)return -1;
              if(i)res+=dist[t];
              st[t]=true;
              for(int j=1;j<n;j++)
                  dist[j]=min(dist[j],g[t][j]);
          }
          return res;
      }
      
      int main()
      {   
          cin>>n>>c;
          for(int i=0;i<n;i++){
              int x,y;
              cin>>x>>y;
              node[i]={x,y};
              dist[i]=INF;
              g[i][i]=INF;
          }
          int res=Prim();
          cout<<res;
          return 0;
      }
      

       

       

      2021-08-03

      20:43:34

       

      posted on 2021-08-03 20:44  Dragon昴  閱讀(66)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 中文字幕无码av激情不卡| 丁香五月亚洲综合在线国内自拍| 久久综合九色综合97婷婷| 国模冰莲自慰肥美胞极品人体图| 人人妻人人妻人人片色av| 色欲国产精品一区成人精品| 欧美人与性动交ccoo| 久久国产乱子精品免费女| 久久97人人超人人超碰超国产| 蜜臀av入口一区二区三区| 啦啦啦高清在线观看视频www | 风流少妇bbwbbw69视频| 精品国产制服丝袜高跟| 四虎在线成人免费观看| 欧美在线观看www| 国产91久久精品一区二区| 国产精品一国产精品亚洲| 国产91精品一区二区蜜臀| 国产成人亚洲精品成人区| 国产美女久久久亚洲综合| 中文字幕乱妇无码AV在线| 亚洲国产精品区一区二区| 又黄又爽又色视频免费| 一区三区在线专区在线| 色一情一乱一伦麻豆| 日韩av第一页在线播放| 国产精品美女www爽爽爽视频 | 人妻内射一区二区在线视频| 亚洲的天堂在线中文字幕| 亚洲一区二区乱码精品| 成人aⅴ综合视频国产| 国产精品三级中文字幕| 日韩成人无码影院| 亚洲av鲁丝一区二区三区黄| 亚洲日韩性欧美中文字幕| 日韩精品 中文字幕 视频在线| 韩国午夜理伦三级| 国产一区二区不卡自拍| 日本亚洲中文字幕不卡| 日本一卡二卡不卡视频查询| 国产精品一区二区三区黄|