题目链接:http://codeforces.com/contest/1131/problem/F

思路:

很容易看出这是一道并查集的题目,因为要输出每个cage中住的鸟的编号,故采用静态链表。用l[i]表示一条链的最左端编号,r[i]表示一条链最右端编号,nex[i]表示编号i后面的鸟的编号,root[i]表示i的祖先,剩下套并查集模板即可。我在这CE了两次,后来问了大神才找到错误,bits/stdc++中已经1定义了get,next,而我的程序中将这两个作为变量,从而CE,但可能是我的编译器的标准库的问题,使得本地可以通过。

代码如下:

 #include<bits/stdc++.h>
using namespace std; const int maxn=;
int n,x,y;
int l[maxn],r[maxn],nex[maxn],root[maxn]; int getr(int k){
if(root[k]==k) return k;
else return root[k]=getr(root[k]);
} int main(){
scanf("%d",&n);
for(int i=;i<=n;++i)
l[i]=i,r[i]=i,root[i]=i;
n--;
while(n--){
scanf("%d%d",&x,&y);
int rx=getr(x),ry=getr(y);
root[ry]=rx;
nex[r[rx]]=l[ry];
r[rx]=r[ry];
}
int p=l[getr()];
while(p){
printf("%d ",p);
p=nex[p];
}
printf("\n");
return ;
}

最新文章

  1. 攻城狮在路上(叁)Linux(零)--- 软件环境、参考书目等一览表
  2. HTTP基础09--web(1)
  3. hdu 5269 ZYB loves Xor I
  4. Git + BeyondCompare
  5. [转载]CSS教程:实例讲解定位Position
  6. MyBatis+MySQL 返回插入的主键ID
  7. percona-toolkit介绍及安装
  8. ECMAScript6-下一代Javascript标准
  9. WGZX:javaScript 学习心得--2
  10. ado.net 基础(一)
  11. wxPython中添加窗口标题图标
  12. careercup-数组和字符串1.4
  13. js判断的执行顺序
  14. PHP While 循环
  15. Evaluation of Forwarding Efficiency in NFV-Nodes Toward Predictable Service Chain Performance
  16. 2018-2019-2 《网络对抗技术》Exp0 Kali安装 Week1 20165225
  17. java枚举类型详解
  18. Myelipse中xml约束文件的导入(以spring为例)
  19. 闭合浮动的方法css
  20. mysql 约束条件介绍

热门文章

  1. 垃圾收集器之:CMS收集器
  2. 用Keras搭建神经网络 简单模版(一)——Regressor 回归
  3. 转载CopyOnWriteArrayList
  4. Oracle中分页查询和联表查询
  5. [转载]tornado.database添加PooledDB连接池功能
  6. 【Unix网络编程】chapter1简介
  7. [jni]Getting Started
  8. Xshell批量导入IP地址
  9. javaScript中对象属性的访问
  10. OpenCL 双调排序 GPU 版