比赛 20130729 评测结果 ATAAATTTTT
题目名称 奶牛的糖果 最终得分 40
用户昵称 noier 运行时间 6.033 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2014-07-17 09:41:57
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
/////////////////////
class node{
public:
	int num;
	bool flag;
	int can;
	vector<int> next;
	node():can(-1){};
};
////////////////////
vector <node> map;
int n;
///////////////////
void init(){
	cin>>n;
	map.resize(n+1);
	for (int i=1;i<=n;i++){
		int temp;
		cin>>temp;
		map[i].num=i;
		map[i].flag=true;
		map[i].next.push_back(temp);
	}
}
int work(int i,int depth){
	if (!map[i].flag) return depth;
	else {
		map[i].flag=false;
		depth=work(map[i].next.at(0),depth+1);
		map[i].flag=true;
		return depth;
	}
}
///////////////////
int main(){
	freopen("treat.in","r",stdin);
	freopen("treat.out","w",stdout);
	ios::sync_with_stdio(false);
	init();
	for (int i=1;i<=n;i++){
		int depth=work(i,0);
	    cout<<depth<<endl;
	}
	return 0;
}