USACO 2016 December Contest Gold T1: Moocast

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了USACO 2016 December Contest Gold T1: Moocast相关的知识,希望对你有一定的参考价值。

鏍囩锛?a href='http://www.mamicode.com/so/1/span' title='span'>span   棰樼洰   namespace   const   ble   clu   绯荤粺   lin   amp   

棰樼洰澶ф剰

FJ鐨凬澶寸墰(1≤N≤1000)涓轰簡鍦ㄤ粬浠箣闂翠紶鎾俊鎭? 鎯宠缁勭粐涓€涓?鍝炲摓骞挎挱"绯荤粺. 濂剁墰浠喅瀹氬幓鐢ㄦ璇濇満瑁呭鑷繁鑰屼笉鏄湪寰堣繙鐨勮窛绂讳箣澶栦簰鐩稿摓鍝炲彨, 鎵€浠ユ瘡涓€澶村ザ鐗涢兘蹇呴』鏈変竴涓璇濇満. 杩欎簺姝ヨ瘽鏈洪兘鏈変竴涓檺鍒朵紶鎾崐寰? 浣嗘槸濂剁墰浠彲浠ラ棿鎺ュ湴閫氳繃涓棿濂剁墰浼犳挱淇℃伅, 鎵€浠ュ苟涓嶆槸姣忓ご鐗涢兘蹇呴』鐩存帴鍚戝叾浠栨瘡涓€澶村ザ鐗涜繛杈?

濂剁墰浠渶瑕佸幓鍐冲畾澶氬皯閽辫姳鍦ㄦ璇濇満涓? 濡傛灉浠栦滑鑺变簡$X, 閭d箞浠栦滑閮藉皢浼氬緱鍒皊qrt(x)璺濈鐨勬璇濇満. 鎵€浠? 涓ゅご鐗涗箣闂寸殑娆у嚑閲屽緱璺濈骞虫柟鏈€澶氭槸X. 璇峰府鍔╁ザ鐗涗滑鎵惧埌鏈€灏忕殑X浣垮緱鍥炬槸寮鸿繛閫氱殑.銆?/p>

棰樼洰鍒嗘瀽

鍥犱负“濂剁墰浠彲浠ラ棿鎺ュ湴閫氳繃涓棿濂剁墰浼犳挱淇℃伅”锛屾墍浠ユ垜浠鎵惧埌灏辨槸鍍?鏈€灏忕敓鎴愭爲 绫讳技鐨勪笢瑗裤€?/p>

鏃㈢劧 N 鏈€澶т负1000锛屾墍浠ユ垜浠彲浠ョ洿鎺ヨ€冭檻 N^2 寤鸿竟锛岀劧鍚?Kruskal 鎵惧嚭鏈€灏忕敓鎴愭爲鍗冲彲銆傦紙娉ㄦ剰鐢?double 瀛樿竟鏉冿級

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 const int MAXN=1e3+10;
 4 
 5 struct Edge
 6     int u,v;
 7     double dis;
 8 e[MAXN*MAXN];
 9 inline bool cmp(Edge x,Edge y)
10     return x.dis<y.dis;
11  
12 double ans;
13 int n,cnt;
14 int f[MAXN];
15 int xx[MAXN],yy[MAXN];
16 
17 inline int Find(int x)
18     return f[x]==x?x:f[x]=Find(f[x]);
19 
20 inline void Kruskal()
21     int tot=0;
22     for(int i=1,ex,ey;i<=cnt;++i)
23         ex=Find(e[i].u);
24         ey=Find(e[i].v);
25         if(ex!=ey)
26             f[ex]=ey;
27             ans=max(ans,e[i].dis);
28             if(++tot==n-1) 
29                 break;
30         
31     
32  
33 int main()
34     scanf("%d",&n);
35     for(int i=1;i<=n;++i)
36         f[i]=i;
37     for(int i=1;i<=n;++i)
38         scanf("%d%d",&xx[i],&yy[i]);
39     for(int i=1;i<=n;++i)
40         for(int j=1;j<=n;++j)
41             if(i!=j)
42                 e[++cnt]=(Edge)i,j,sqrt((xx[i]-xx[j])*(xx[i]-xx[j])+(yy[i]-yy[j])*(yy[i]-yy[j]));
43     sort(e+1,e+cnt+1,cmp);
44     Kruskal();
45     printf("%.0lf",ans*ans);
46     return 0;
47 

 

以上是关于USACO 2016 December Contest Gold T1: Moocast的主要内容,如果未能解决你的问题,请参考以下文章

USACO 2007 December Contest, Silver Problem 2. Building Roads Kruskal最小生成树算法

USACO 2018 December Contest Platinum T2: Sort It Out

USACO 2015 December Contest Max Flow (bzoj4390)

USACO 2017 December GoldA Pie for a Pie 题解

USACO 2017 December GoldA Pie for a Pie 题解

USACO 2017 December Contest Platinum T2: Push a Box