Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
68235 | 邢逸轩 | 通信系统 | C++ | 解答错误 | 0 | 141 MS | 260 KB | 555 | 2023-02-03 15:44:57 |
#include<bits/stdc++.h> using namespace std; int n,m; int p[10010]; int head(int a){ while(p[a]!=a){ a=p[a]; } return a; } int main(){ while(true){ cin>>n>>m; if(n==m&&n==0) break; int ans=0; for(int i=1;i<=n;i++) p[i]=i; for(int i=1;i<=m;i++){ int a,b; cin>>a>>b; if(head[a]==head[b]){ ans=1; }else{ p[head(b)]=head(a); } } for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(head(i)!=head(j)) ans=1; } } if(ans==1) cout<<"No"; else cout<<"Yes"; } return 0; }