UVA1160 X-Plosives
2024-10-12 03:40:02
思路
每个元素设为点,化合物设为边
不能出现k条边k个点的环
直接并查集检查即可
代码
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int fa[100100],ans=0,a,b;
void init(void){
ans=0;
for(int i=1;i<=100010;i++)
fa[i]=i;
}
int find(int x){
return (fa[x]==x)?x:fa[x]=find(fa[x]);
}
void merge(int x,int y){
if(find(x)==find(y))
ans++;
else
fa[find(x)]=find(y);
}
int main(){
freopen("test.in","r",stdin);
freopen("test.out","w",stdout);
while(scanf("%d",&a)==1){
init();
while(a!=-1){
scanf("%d",&b);
merge(a,b);
scanf("%d",&a);
}
printf("%d\n",ans);
}
return 0;
}
最新文章
- PHP list,explode的使用
- CI Weekly #1 | 这份周刊,带你了解 CI/CD 、DevOps、自动化测试
- C#集合--ICollection接口和IList接口
- ArcGISDynamicMapServiceLayer 实现条件过滤
- C# 中的事件含义介绍
- js之Function原型
- typedef与define基本使用
- [转] linux新的API signalfd、timerfd、eventfd使用说明
- [置顶] MongoDB 分布式操作——分片操作
- vi 快捷键积累
- windows phone 了解LinearGradientBrush类和RadialGradienBrush类(11)
- 打印Ibatis最后,SQL声明
- Linux kernel Vhost-net 和 Virtio-net代码详解
- Kafka 源代码分析之Message
- C++实现词法分析器
- Linux /etc/profile文件详解
- UOJ 274 温暖会指引我们前进 - LCT
- c++中友元机制
- linux 版本中 i386/i686/x86-64/pcc 等的区别
- mysql5.7忘记密码时,修改root密码