LA看题 请点击:传送门

UVA 上也有这题 :UVA 1160 - X-Plosives

题目大意就是如果车上存在 k 个简单化合物,正好包含 k 种元素 ,那么它们将有危险,此时你应该拒绝装车。 要求输出没有装车的化合物。

把每个元素看成顶点,则一个简单化合物就是一条边。如果存在环形,那么组成环的化合物是危险的,否则就是安全的。

那么如何实现呢?

用并查集。

#include<cstdio>
const int MAXN=100000+10;
int p[MAXN];
int findset(int x)
{
return x==p[x]? x:p[x]=findset(p[x]); //把父节点赋予,压缩路径
}
int main()
{
int a,b;
while(scanf("%d",&a)!=EOF)
{
for(int i=0;i<MAXN;i++)
p[i]=i;
int ans=0;
while(a != -1 )
{
scanf("%d",&b);
a=findset(a); //通过查找判断a,b是否在同一集合。
b=findset(b);
if(a==b)
ans++;
else
p[a]=b;
scanf("%d",&a);
}
printf("%d\n",ans);
}
}

最新文章

  1. 【Win10 应用开发】自适应Toast通知的XML文档结构
  2. Android课程---优化ListView列表视图(2)
  3. 你以为的ASP.NET文件上传大小限制是你以为的吗
  4. ATMEL处理器自带USB CDC的Win7驱动问题
  5. SQL Union和SQL Union All用法
  6. CF380C Sereja and Brackets [想法+线段树]
  7. 四、cocos2dx动画Animation介绍
  8. list去重 转载
  9. Mac打开Terminal报错-bash : : command not found
  10. yolo3的改变
  11. [ Deep Learning ] Keras &amp; TensorFlow安装依赖包
  12. POJ1944 Fiber Communications (USACO 2002 February)
  13. MyEclipse和Eclipse
  14. 2016.6.21——Add Binary
  15. 安装并使用Oracle SQL Developer访问Oracle
  16. VS2013只显示会附加到进程,无法启动调试
  17. Host is blocked because of many connection errors; unblock with &#39;mysqladmin flush-hosts&#39;
  18. [转]mysql 常用命令集锦[绝对精华]
  19. jQuery中如何给动态添加的元素绑定事件
  20. ubuntu_software_install

热门文章

  1. POJ 2323 贪心
  2. BZOJ 1232 Kruskal
  3. Android 关于::app:clean :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE,引用jar冲突问题
  4. 湖南省第八届大学生计算机程序设计竞赛(A,B,C,E,F,I,J)
  5. maven项目引入sqljdbc4 找不到包的完美 解决方案
  6. DG archive gap
  7. ajax关于主流中的异类:应对Opera(四)
  8. 小米开源文件管理器MiCodeFileExplorer-源码研究(1)-2个模型Model
  9. inode与ln命令
  10. 使用Ant打包Android应用具体解释——Ant使用解析