洛谷P2611 信息传递
并查集裸题,记录每个点的胜读,取个min就好了
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int fa[200007],dep[200007],n,x,a,mn=1e9+7;
template<class T>void read(T &x)
{
int f=0;x=0;char ch=getchar();
while(ch<'0'||ch>'9') {f|=(ch=='-');ch=getchar();}
while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}
x=f?-x:x;
}
int find(int x)
{
if(fa[x]!=x) {int t=fa[x];fa[x]=find(fa[x]);dep[x]+=dep[t];}
return fa[x];
}
void yhh(int a,int b)
{
int x=find(a),y=find(b);
if(x!=y) fa[x]=y,dep[a]=dep[b]+1;
else mn=min(mn,dep[a]+dep[b]+1);
}
int main()
{
read(n);
for(int i=1;i<=n;++i)
fa[i]=i;
for(int i=1;i<=n;++i)
read(x),yhh(i,x);
printf("%d",mn);
return 0;
}
洛谷P2611 信息传递的更多相关文章
- 洛谷P2661 信息传递(最小环,并查集)
		洛谷P2661 信息传递 最小环求解采用并查集求最小环. 只适用于本题的情况.对于新加可以使得两个子树合并的边,总有其中一点为其中一棵子树的根. 复杂度 \(O(n)\) . #include< ... 
- [NOIP2015] 提高组 洛谷P2661 信息传递
		题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ... 
- 洛谷 P2661 信息传递 Label:并查集||强联通分量
		题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ... 
- 洛谷P2661 信息传递==coedevs4511 信息传递 NOIP2015 day1 T2
		P2661 信息传递 题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知 ... 
- 洛谷 P2661 信息传递(并查集 & 最小环)
		嗯... 题目链接:https://www.luogu.org/problemnew/show/P2661 这道题和一些比较水的并查集不太一样,这道题的思路就是用并查集来求最小环... 首先,如果我们 ... 
- NOIP2015提高组T2 洛谷P2661 信息传递
		题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ... 
- 洛谷——P2661 信息传递
		https://www.luogu.org/problem/show?pid=2661#sub 题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其 ... 
- 洛谷 P2661 信息传递 题解
		P2661 信息传递 题目描述 有 \(n\) 个同学(编号为 \(1\) 到 \(n\) )正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为 \(i\) 的同学的信息传 ... 
- 洛谷p2661信息传递题解
		题目 这个题一眼看上去就是用并查集求最小环. 我们可以设两个数组分别是f,d分别表示该点的爸爸和该点到祖先的距离. 当该点的爸爸等于他时,那他肯定就是祖先. 此时信息就肯定传递完了,此时的整个图中(我 ... 
随机推荐
- cmd应用基础 扫盲教程
			cmd是什么? 对于程序员而言,cmd命令提示符是windows操作系统下一个比较重要的工具.对于程序员而言,为了追求更高的效率而抛弃花俏的界面已然是意见很常见的行为,截止到目前的,全世界仍有大量的服 ... 
- React(三)JSX内置表达式
			(一)JSX是什么? React 使用 JSX 来替代常规的 JavaScript. JSX 是一个看起来很像 XML 的 JavaScript 语法扩展. 我们不需要一定使用 JSX,但它有以下优点 ... 
- ELK 5.5.0 安装
			Preparation 假设当前为root用户,并已有jdk1.8环境. cd /opt/package useradd sealion ElasticSearch wget https://arti ... 
- 【搜索2】P1706 全排列问题
			题目描述 输出自然数1到n所有不重复的排列,即n的全排列,要求所产生的任一数字序列中不允许出现重复的数字. 输入输出格式 输入格式: n(1≤n≤9) 输出格式: 由1-n组成的所有不重复的数字序列, ... 
- chrome 安装setupvpn 解决chorme未能成功加载扩展程序的问题
			一: vpn文件 https://pan.baidu.com/s/1wZV2HAC3GHlh1bjlvbilRg 提取码: gz72; 二 : 安装步骤 ------请看完以下步骤,不要直接拖 ... 
- ArcGIS AddIn 批量设置栅格图层背景色为透明
			protected override void OnClick() { // // TODO: Sample code showing how to access button host // Arc ... 
- java 实现文件上传下载以及查看
			项目的目录结构 代码 IOUtils.java package cn.edu.zyt.util; import java.io.IOException; import java.io.InputSt ... 
- c++第七周学习小结
			时间过得好快,一下就上了好多节c++的课了.我们现在新学了控制语句和函数,这对我来说有点难.老师上课的时候ppt过得有些快,自己会跟不上,所以以后上课前要预习充分.在经过同学和搜索引擎帮助后,我完成了 ... 
- robot  中文  乱码  问题  的处理
			第一种方式: def unic(item): if isinstance(item, unicode): return item if isinstance(item, (bytes, ... 
- react将字符串转义成html语句
			在使用reactjs库的时候,会遇到将一段html的字符串,然后要将它插入页面中以html的形式展现,然而直接插入的话页面显示的就是这段字符串,而不会进行转义,可以用以下方法插入,便可以html的形式 ... 
