#include <bits/stdc++.h>
using namespace std;
int visit[123456];
int pre[123456];
int find(int x)
{
while(pre[x]!=x)
{
x=pre[x];
}
return x;
}
void join(int a,int b)
{
if(find(a)!=find(b))
{
pre[find(a)]=find(b);
}
}
int main()
{
int m,a,b,i,s1,s2,key;
while(cin>>m)
{
key=m;
s1=0;
s2=0;
memset(visit,0,sizeof(visit));
for(i=1;i<=123456;i++)
{
pre[i]=i;
}
while(m--)
{
cin>>a>>b;
join(a,b);
visit[a]=1;
visit[b]=1;
}
for(i=1;i<=123456;i++)
{
if(visit[i]==1)
{
s1++;
}
if(visit[i]==1&&pre[i]==i)
{
s2++;
}
}
if(s1==key+1&&s2==1)
{
cout<<"Yes"<<endl;
}
else
{
cout<<"No"<<endl;
}
}
return 0;
}
小鑫的城堡
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.