zoukankan      html  css  js  c++  java
  • A

     1 #include <cstdio>
     2 #include <algorithm>
     3 #include <cstring>
     4 #include <iostream>
     5 using namespace std;
     6 int par[1005];
     7 bool b[1005];//判断哪个电脑被修好了
     8 struct 
     9 {
    10     int x,y;
    11 }a[1005];
    12 void init(int n)
    13 {
    14     for(int i=1;i<=n;i++)
    15     {
    16         par[i]=i;
    17     }
    18 }
    19 int find(int x)
    20 {
    21     if(par[x]==x)
    22     {
    23         return x;
    24     }
    25     else
    26     {
    27         return par[x]=find(par[x]);
    28     }
    29 }
    30 void unite(int x,int y)
    31 {
    32     x=find(x);
    33     y=find(y);
    34     if(x!=y)
    35         par[x]=y;
    36     else 
    37         return ;
    38 }
    39 bool same(int x,int y)
    40 {
    41     return find(x)==find(y);
    42 }
    43 int main (void)
    44 {
    45     memset(b,false,sizeof(b));
    46     int num;int maxx;
    47     cin>>num>>maxx;
    48     init(num);
    49     for(int i=1;i<=num;i++)
    50     {
    51         scanf("%d %d",&a[i].x,&a[i].y);
    52     }
    53     char op;
    54     int id;
    55     while(~scanf(" %c",&op))
    56     {
    57         if(op=='O')
    58         {
    59             scanf("%d",&id);
    60             b[id]=true;
    61 
    62             for(int i=1;i<=num;i++)
    63             {
    64                 if(b[i]==true)
    65                 {   
    66                     int di=(a[id].x-a[i].x)*(a[id].x-a[i].x)+
    67                         (a[id].y-a[i].y)*(a[id].y-a[i].y);
    68                     if(di<=maxx*maxx)//如果比限制距离小,可以合并
    69                     {
    70                         unite(id,i);
    71                     }
    72                 }
    73             }
    74         }
    75         if(op=='S')
    76         {
    77             int c,d;
    78             scanf("%d %d",&c,&d);
    79             if(find(d)==find(c))
    80                 printf("SUCCESS
    ");
    81             else
    82                 printf("FAIL
    ");
    83         }
    84     }
    85     return 0;
    86 }
  • 相关阅读:
    汤姆大叔的博客
    ajax
    兼容谷歌的光标居中写法
    浅谈服务治理与微服务
    Java线程面试题合集(含答案)
    java设计模式之装饰者模式
    java集合类详解
    java线程-看这一篇就够了
    javaIO详解
    java反射详解
  • 原文地址:https://www.cnblogs.com/ouyang_wsgwz/p/9387898.html
Copyright © 2011-2022 走看看