zoukankan      html  css  js  c++  java
  • codevs 2751 军训分批

    题目描述 Description

    某学校即将开展军训。共有N个班级。

    前M个优秀班级为了保持学习优势,必须和3位任课老师带的班级同一批。

    问共有几批?

    输入描述 Input Description

    N,M

    老师教的其他班级(M行)

    输出描述 Output Description

    批次数

    样例输入 Sample Input

    4 2

    1 1 1

    2 3 1

    样例输出 Sample Output

    2

    数据范围及提示 Data Size & Hint

    对于50%数据,N,M<=1000.

    对于100%数据,N,M<=30000,N<=M.

    代码:

    #include<cstdio>
    using namespace std;
    int fa[30001],n,m,ans;
    int find(int x)
    {
        return fa[x]==x?x:fa[x]=find(fa[x]);
    }
    int main()
    {
        int i,j,x,y,z;
        scanf("%d%d",&n,&m);
        for(i=1;i<=n;i++)
          fa[i]=i;
        for(i=1;i<=m;i++)
        {
            scanf("%d%d%d",&x,&y,&z);
            int ii=find(i),xx=find(x),yy=find(y),zz=find(z);
            if(fa[ii]!=fa[xx])
              fa[xx]=ii;
            if(fa[ii]!=fa[yy])
              fa[yy]=ii;
            if(fa[zz]!=fa[ii])
              fa[zz]=ii;
        }
        for(i=1;i<=n;i++)
          if(fa[i]==i)
            ans++;
        printf("%d",ans);
        return 0;
    }
  • 相关阅读:
    小记2_finddata_t结构体
    小记1
    2014-1-2 笔记
    _RecordsetPtr的 open函数
    SAFEARRAY
    用VC实现特定编辑框上对回车键响应
    常用控件的常用消息
    单文档与多文档
    java中得到json格式的数据
    form表单验证时的onsubmit事件
  • 原文地址:https://www.cnblogs.com/jyhywh/p/6054773.html
Copyright © 2011-2022 走看看