Untitled
unknown
plain_text
3 years ago
909 B
10
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...