求优化
查看原帖
求优化
1380404
zby2_楼主2024/7/25 08:29
#include <bits/stdc++.h>
using namespace std;
int a[100005],n,b[100005]; 
int dfs(int w,int s){
	if(b[a[w]]) return s;
	b[a[w]]=1;
	return dfs(a[w],s+1);
}
int main() {
	cin>>n;
	for(int i=1;i<=n;++i) cin>>a[i];
	for(int i=1;i<=n;++i){
		memset(b,0,sizeof b);
		b[i]=1;
		cout<<dfs(i,1)<<endl;
	}
	//cout<<ans<<endl;
	return 0;
}
2024/7/25 08:29
加载中...