提交时间:2023-02-03 17:48:39
运行 ID: 68281
#include<bits/stdc++.h> using namespace std; int n,m,p[1010],a,b; bool f; int find(int x){ if(p[x]!=x) return p[x]=find(p[x]); return p[x]; } int main(){ while(cin>>n>>m,n+m){ if(n==m+1){ f=1; for(int i=1;i<=n;i++) p[i]=i; while(m--){ cin>>a>>b; if(find(a)-find(b))p[find(b)]=find(a); else f=0; }for(int i=1;i<=n&&f;i++)f&=(p[i]!=i); cout<<(f?"Yes":"No")<<"\n"; }else cout<<"No\n"; } return 0; }