Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
68282 | 桑迪 | 通信系统 | C++ | 解答错误 | 0 | 146 MS | 260 KB | 419 | 2023-02-03 17:49:26 |
#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){ 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"; } return 0; }