zoukankan      html  css  js  c++  java
  • hdu 2545 并查集 树上战争

    #include<stdio.h>
    #include<string.h>
    #define N 110000
    struct node {
        int father,count;
    }pre[N];
    int find(int x) {
    if(x==pre[x].father) {
    pre[x].count=0;
    return x;
    }
            int h=pre[x].father;
           pre[x].father=find(pre[x].father);
          pre[x].count+=pre[h].count;
    return pre[x].father;
    }
    int main() {
      int n,m,a,b,i;
      while(scanf("%d%d",&n,&m),n||m) {
          for(i=1;i<=n;i++) {
              pre[i].father=i;
              pre[i].count=1;
          }
          for(i=1;i<n;i++) {
              scanf("%d%d",&a,&b);
                 pre[b].father=a;
          }
          while(m--) {
         scanf("%d%d",&a,&b);
         find(a);find(b);
         if(pre[a].count<=pre[b].count)
             printf("lxh ");
         else
             printf("pfz ");
          }
    }
    return 0;
    }
  • 相关阅读:
    Android购物商城
    Android简易计算器
    安卓第四周作业
    第一次安卓作业
    十五周课后习题
    第十三周作业
    十三周上机练习
    第十二周作业
    第十二周练习
    11周上机作业(5.14)
  • 原文地址:https://www.cnblogs.com/thefirstfeeling/p/4410850.html
Copyright © 2011-2022 走看看