军训分批(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.

/*迷之题意先说下题目意思吧:给定n个班级,m个优秀班级,对于每个优秀班级,给出3名老师,数值代表每个老师还教着哪个班。教同一个班的三名老师必须同一批次,问需要多少批次。因为教同一个班的三名老师必须同一批次,所以对于每一个优秀班级,都最多有可能有另外3个班和它同一批次,我们就用并查集将它们合并,以求出答案。 
*/
#include<cstdio>
#include<iostream>
#define M 30010
using namespace std;
int fa[M];
int find(int x)
{if(fa[x]==x)return x;return fa[x]=find(fa[x]);
}
int main()
{int n,m;scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)fa[i]=i;for(int i=1;i<=m;i++){int x,y,z;scanf("%d%d%d",&x,&y,&z);int r=find(i),a=find(x),b=find(y),c=find(z);if(r!=a)fa[a]=r;if(r!=b)fa[b]=r;if(r!=c)fa[c]=r;}int ans=0;for(int i=1;i<=n;i++)if(fa[i]==i)ans++;printf("%d",ans);return 0;
} 
View Code

 

转载于:https://www.cnblogs.com/harden/p/5707755.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418242.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(2034)vue之电商管理系统电商系统之绘制图表

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

2021-08-08

Java中对于方法和字段一共有四种访问权限&#xff1b;分别为&#xff1a; &#xff08;1&#xff09;private &#xff08;2&#xff09;public &#xff08;3&#xff09;protected &#xff08;4&#xff09;默认&#xff08;包访问权限&#xff09; 一、private 类内部能访问…

前端学习(2035)vue之电商管理系统电商系统之形成折线图

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

2021-08-17

三位运算符 最后的连个表达式都需要为同一个类型 所以Integer会自动提升类型为Double ; 所以o1 1.0; 这种写法就不需要统一类型 第一个&#xff1a;两个i,j为两个地址&#xff1b; 第二个&#xff1a;和第三个同。 第三个&#xff1a; 再Integer类中 有静态生命一个数组存…

包装类转换基本数据类型与基本数据类型转换为包装类

包装类转换基本数据类型 基本数据类型转换为包装类 新特性&#xff1a; 自动装箱&#xff08;基本数据类型转换为包装类&#xff09;&#xff1a; 自动拆箱&#xff08;包装类转换基本数据类型&#xff09;&#xff1a; 基本数据类型、包装类向String 的转换 方式1&#xff1…

前端学习(2038)vue之电商管理系统电商系统之优化nprogress加载进度条

main.js import Vue from vue import App from ./App.vue import router from ./router import ./plugins/element.js //导入字体图标 import ./assets/fonts/iconfont.css Vue.config.productionTip false //导入全局样式 import ./assets/css/global.css import TreeTable …

Eclipse中单元测试

再开发时候只需要Test即可

解决Unity3D导出apk失败:Failed to re-package resources

前几天把系统重装了一下&#xff0c;重新安装Unity3D和Android Studio之后发现过去的文件都不能导出了。 错误信息主要包括&#xff1a; CommandInvokationFailure: Failed to re-package resources. See the Console for details.E:\Android\sdk\build-tools\24.0.0\aapt.exe …

代码块的总结

class Mid extends Root{ static { System.out.println("Mid的静态初始化块"); } { System.out.println("Mid的普通初始化块"); } public Mid() { super(); System.out.println("Mid的无参构造器…

匿名子类对象

匿名对象的意义&#xff1a;一般只使用一次&#xff0c;图方便&#xff0c;不需要重新写一个类。 匿名类通常都是的形式结构通常都是&#xff1a; abstract class A ... 创建匿名类&#xff1a; A a1 new A(){ 重写所有抽象类的方法 } package AbstractTest2; public cla…