#define _USE_MATH_DEFINES #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; int N, M; vector G[101]; int main() { cin >> N >> M; for(int i = 0; i < M; ++i) { int a,b; cin >> a >> b; G[a].push_back(b); G[b].push_back(a); } vector vis(N+1, -1); for(int i = 1; i <= N; ++i) { if(vis[i] != -1) continue; queue q; q.push(i); vis[i] = 0; while(!q.empty()) { int p = q.front(); q.pop(); int n = vis[p]; for(int ne : G[p]) { if(vis[ne] == 1-n) continue; else if(vis[ne] == n) { cout << "No" << endl; return 0; } vis[ne] = 1-n; q.push(ne); } } } cout << "Yes" << endl; }