UVA1160 X-Plosives
思路
每个元素设为点,化合物设为边
不能出现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;
}
UVA1160 X-Plosives的更多相关文章
- uva1160 易爆物
#include<iostream>#include<cstdio>#include<algorithm>#include<cstdlib>using ...
随机推荐
- 一次CTF后对二维码的认识
前一段时间参加一个CTF比赛的时候其中有一个题目就是一张二维码图片,然后获取其中的信息来解题,那个二维码的特别之处在于,它把3个位置探测区域用几张美女图片代替了,然后在做题的时候顺便简单的了解了一下二 ...
- linux 压缩和解压
xz 压缩和解压 tar -Jcvf backup.tar.xz backup/ tar -Jxvf backup.tar.xz 加参数 p,使文件保持原来的权限. tar -Jcvpf timesh ...
- ruby 知识点随笔
print .puts 和 p 方法的区别."" 与 '' 的区别. 处理控制台编码问题 >ruby -E utf-8 脚本文件名称 # 执行脚本 >irb -E u ...
- 东大oj1155 等凹函数
Problem Description 定义一种数字称为等凹数字,即从高位到低位,每一位的数字先递减再递增,且该数是一个回文数,即从左读到右与从右读到左是一样的,仅形成一个等凹峰,如543212345 ...
- 推举算法 AdaBoost 哥德尔奖 Godel Prize
推举算法 AdaBoost 2003年理论计算机科学界最高奖 哥德尔奖 Godel Prize
- RTOS 和中断之间要注意的
#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 15 #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRI ...
- Fiddler过滤
1.REGEX:\.(js|css|js|png|gif|\?.*|css\?.*)$ 2..css .js .gif .png .jpg .swf
- vue-router 简单使用
- JavaWeb & Tomcat
1 JavaWeb概述 Java在服务器端的应用有Servlet,JSP和第三方框架等. Java的Web框架基本都遵循特定的路数:使用Servlet或者Filter拦截请求,使用MVC的思想设计架构 ...
- js之prototype 原型对象
原型对象prototype可以这么理解,是该类的实例对象的模板,每个实例对象都是先复制一份该类的prototype,通过这个可以让类的实例拥有相同的功能 String.prototype.say= ...