[noip2015] 信息传递
来源:互联网 发布:linux nginx php7配置 编辑:程序博客网 时间:2024/05/22 14:56
题目链接
题解:根据环的性质,可以去掉入度为0的点后拓扑排序或直接搜(因为懒,代码中没有去掉而是加标记防止算上其他环上的点)
#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int M=200005;#define INF 0x3f3f3f3fstruct edge{ int to,next;}e[M];int head[M],vis[M],dr[M];int n,ans=INF,x,t;void add(int i,int j){ e[t].to=j; e[t].next=head[i]; head[i]=t++;}void init(){ memset(head,-1,sizeof(head)); cin>>n; for(int i=1;i<=n;i++) scanf("%d",&x),add(i,x);}void dfs(int x,int tm,int size){ vis[x]=tm; for(int i=head[x];i!=-1;i=e[i].next){ int v=e[i].to; if(!vis[v]) dr[v]=size,dfs(v,tm,size+1); else if(vis[v]==tm) { ans=min(ans,size-dr[v]); return ; } }}void work(){ for(int i=1;i<=n;i++) if(!vis[i]) dfs(i,i,1); cout<<ans<<endl;}int main(){ init(); work(); return 0;}
0 0
- [NOIP2015]信息传递
- [noip2015] 信息传递
- 【NOIP2015】信息传递
- Noip2015 D1T2信息传递
- 【NOIP2015】Day1T2 信息传递
- noip2015 信息传递
- NOIP2015信息传递
- 【NOIP2015】信息传递 dfs
- NOIP2015信息传递
- NOIP2015 信息传递
- [Noip2015] 信息传递
- [noip2015]信息传递 题解
- 【noip2015】信息传递
- [NOIP2015] 信息传递 D1 T2
- 【NOIP2015】洛谷2661 信息传递
- NOIp2015 提高组 信息传递
- [NOIP2015]Day1 T2 信息传递
- UOJ 146 【NOIP2015】信息传递
- Charles4.0最新版破解(更新至4.0.1)
- Oracle数据库语句大全
- 【51Nod】1007 - 正整数分组(01背包)
- 1908: 小火山的围棋梦想
- 深入浅出设计模式之适配器模式
- [noip2015] 信息传递
- Java算法——求100—999之间的所有水仙花数,并统计一共有几个
- AndroidVerifyBoot
- PHP Class各种方法和类的使用
- 如何在caffe中添加新的Layer
- 组合游戏(Nim 、反Nim)
- rt-thread的小内存管理算法分析
- C++用户自定义转换(User-Defined Conversion)
- java线程 存取钱问题