记录编号 514780 评测结果 AAAAAATTTT
题目名称 [NOIP 2015]信息传递 最终得分 60
用户昵称 Gravatarleon 是否通过 未通过
代码语言 C++ 运行时间 4.052 s
提交时间 2018-10-18 00:25:15 内存使用 1.56 MiB
显示代码纯文本
#include <iostream>    
#include <cstdio>    
#include <cmath>    
#include <string>
#include <algorithm>    
using namespace std;   

int a[200010],c[200010],d[200010];   
 int n,s;
int ans=99999999;
void dfs(int t){
    if(c[a[t]]!=0){
				if(c[a[t]]!=0){

		ans=min(ans,c[t]-c[a[t]]+1);
						}
    }
	else
	{
		c[ a[t] ]=c[t]+1;
		dfs(a[t]);
		c[a[t]]=0;	
	}
}

int Main()  
{   
	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++){
			dfs(i);
    }
    cout<<ans;
    return 0;
}  
int xx=Main();
int main(){;
}