博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 1116 并查集
阅读量:5025 次
发布时间:2019-06-12

本文共 759 字,大约阅读时间需要 2 分钟。

思路:

如果 每个联通块 边数>=点数 就OK
用并查集搞

//By SiriusRen#include 
#include
#include
using namespace std;const int N=100050;int n,m,xx,yy,sizep[N],sizee[N],f[N];int find(int x){
return x==f[x]?x:f[x]=find(f[x]);}int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++)f[i]=i,sizep[i]=1; for(int i=1;i<=m;i++){ scanf("%d%d",&xx,&yy); int fx=find(xx),fy=find(yy); if(fx!=fy){ f[fx]=fy; sizep[fy]+=sizep[fx]; sizee[fy]+=sizee[fx]+1; } else sizee[fx]++; } for(int i=1;i<=n;i++){ int fx=find(i); if(sizep[fx]>sizee[fx]){
puts("NIE");return 0;} } puts("TAK");}

转载于:https://www.cnblogs.com/SiriusRen/p/6532011.html

你可能感兴趣的文章
myeclipse10添加jQuery自动提示的方法
查看>>
【eclipse jar包】在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。...
查看>>
视频监控 封装[PlayCtrl.dll]的API
查看>>
软件工程APP进度更新
查看>>
Python 使用正则替换 re.sub
查看>>
CTF中那些脑洞大开的编码和加密
查看>>
简化工作流程 10款必备的HTML5开发工具
查看>>
c++ 调用外部程序exe-ShellExecuteEx
查看>>
Java进击C#——语法之知识点的改进
查看>>
IdentityServer流程图与相关术语
查看>>
BirdNet: a 3D Object Detection Framework from LiDAR information
查看>>
icon fonts入门
查看>>
【Django】如何按天 小时等查询统计?
查看>>
HDU2191(多重背包)
查看>>
测试用例(一)
查看>>
【转】 mysql反引号的使用(防冲突)
查看>>
邮件中的样式问题
查看>>
AJAX 状态值与状态码详解
查看>>
php面向对象编程(oop)基础知识示例解释
查看>>
1.在数组中找到与给定总和的配对
查看>>