| 记录编号 | 209269 | 评测结果 | AAAAAAAAAA | 
    
        | 题目名称 | 2105.[NOIP 2015]信息传递 | 最终得分 | 100 | 
    
        | 用户昵称 |  NVIDIA | 是否通过 | 通过 | 
    
        | 代码语言 | C++ | 运行时间 | 0.151 s | 
    
        | 提交时间 | 2015-11-21 16:00:47 | 内存使用 | 3.03 MiB | 
    
    
    
    		显示代码纯文本
		
		#include<bits/stdc++.h>
using namespace std;
int n,ans=99999999,A[200010]={0},B[200010]={0};
struct vist
{
       int q;       
       int s;
}m[200010];
int main()
{
    ios::sync_with_stdio(false);
	freopen("2015message.in","r",stdin);
    freopen("2015message.out","w",stdout);
    cin>>n;
    for(int i=1;i<=n;i++)cin>>A[i];
  for(int i=1;i<=n;i++)
    {
            if(m[i].q!=0) continue;
            int vist=0,j=i;
            while(true)
            {
                 vist++;
                 if(m[j].q==i)
                ans=ans<(vist-m[j].s)?ans:(vist-m[j].s);//三目运算符判断             
              if(m[j].q!=0) break;
                 m[j].s=vist;
                 m[j].q=i;
                 j=A[j];      
            }       
    }
    cout<<ans;
   return 0;    
}