zoukankan      html  css  js  c++  java
  • bzoj2429 [HAOI2006]聪明的猴子

    题目链接

    kruskal最小生成树,只不过在坐标系上

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstdlib>
     4 #include<string>
     5 #include<cstring>
     6 #include<cmath>
     7 #include<algorithm>
     8 #include<ctime>
     9 #include<queue>
    10 #include<stack>
    11 #include<map>
    12 #include<set>
    13 using namespace std;
    14 int getint()
    15 {
    16     int ret=0,f=1;
    17     char ch=getchar();
    18     while(ch<'0'||ch>'9')
    19     {
    20         if(ch=='-')f=0;
    21         ch=getchar();
    22     }
    23     while(ch>='0'&&ch<='9')ret*=10,ret+=ch-'0',ch=getchar();
    24     return f==0?-ret:ret;
    25 }
    26 struct bian
    27 {
    28     int x,y,v;
    29     bool operator < (const bian &a)const
    30     {
    31         return v<a.v;
    32     }
    33 }bi[500050];
    34 int Max,n,m,ed,ans,tot,a[555],x[1010],y[1010],fa[1010];
    35 int find(int x)
    36 {
    37     return x==fa[x]?x:fa[x]=find(fa[x]);
    38 }
    39 int main()
    40 {
    41     n=getint();
    42     for(int i=1;i<=n;i++)a[i]=getint();
    43     m=getint();
    44     for(int i=1;i<=m;i++)fa[i]=i,x[i]=getint(),y[i]=getint();
    45     for(int i=1;i<=m;i++)
    46         for(int j=i+1;j<=m;j++)
    47             bi[++ed].x=i,bi[ed].y=j,bi[ed].v=(x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]);
    48     sort(bi+1,bi+ed+1);
    49     for(int i=1;i<=ed;i++)
    50     {
    51         int q=find(bi[i].x),w=find(bi[i].y);
    52         if(q!=w)
    53         {
    54             fa[q]=w;
    55             tot++;
    56             if(tot==m-1)
    57             {
    58                 Max=bi[i].v;
    59                 break;
    60             }
    61         }
    62     }
    63     for(int i=1;i<=n;i++)if(a[i]*a[i]>=Max)ans++;
    64     printf("%d",ans);
    65     return 0;
    66 }
  • 相关阅读:
    电脑不能连接到热点
    常用网络协议
    HVV面试
    【转载】hacker术语
    渗透测试学习路线
    系统安全——可信计算
    rsync文件同步详解
    rabbitmq集群部署高可用配置
    ansible自动化部署之路笔记
    ELK-elasticsearch-6.3.2部署
  • 原文地址:https://www.cnblogs.com/HugeGun/p/5151636.html
Copyright © 2011-2022 走看看