Untitled

 avatar
unknown
plain_text
2 years ago
909 B
7
Indexable
#include <iostream>
#define MAX_STACK 10001
using namespace std;


int max(int a, int b){
	if(a>b)return a;
	return b;
}
int n;

int ke[105][105];
int dd[105];
int d[105];

int main() {
	//freopen("input.txt","r",stdin);
	int tc=0;
	int x,y;
	while(cin>>n)
	{
		int ans=0;
		tc++;
		int st;
		cin>>st;
		//cout<<n<<" "<<st<<"\n";
		for(int i=1;i<=100;i++)dd[i]=d[i]=0;
		for(int i=1;i<=100;i++)
			for(int j=1;j<=100;j++)ke[i][j]=0;
		for(int i=1;i<=n/2;i++)
		{
			cin>>x>>y;
			ke[x][y]=1;
		}

		d[st]=1;
		int dau=1,cuoi=1;
		int s[102];
		s[1]=st;
		dd[st]=1;
		while(dau<=cuoi)
		{
			int p=s[dau];
			for(int i=1;i<=100;i++)if(ke[p][i]==1&&dd[i]==0)
			{
				dd[i]=1;
				d[i]=d[p]+1;
				s[++cuoi]=i;
			}
			dau++;
		}

		int id;
		for(int i=1;i<=100;i++)
			{
				if(d[i]>=ans)ans=d[i],id=i;
		}
		
			cout<<"#"<<tc<<" "<<id<<"\n";
	}
	
}
Editor is loading...