Submission #1276804

#TimeUsernameProblemLanguageResultExecution timeMemory
1276804sepantaNewspapers (CEOI21_newspapers)C++17
4 / 100
1 ms680 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N, M; cin >> N >> M; vector<vector<int>> adj(N + 1); for (int i = 0; i < M; i++) { int u, v; cin >> u >> v; adj[u].push_back(v); adj[v].push_back(u); } vector<int> color(N + 1, -1); bool bipartite = true; vector<int> partA, partB; queue<int> q; color[1] = 0; q.push(1); while (!q.empty() && bipartite) { int u = q.front(); q.pop(); for (int v : adj[u]) { if (color[v] == -1) { color[v] = 1 - color[u]; q.push(v); } else if (color[v] == color[u]) { bipartite = false; break; } } } if (!bipartite) { cout << "NO\n"; return 0; } for (int i = 1; i <= N; i++) { if (color[i] == 0) partA.push_back(i); else partB.push_back(i); } cout << "YES\n"; cout << N << "\n"; for (int u : partA) cout << u << " "; for (int v : partB) cout << v << " "; cout << "\n"; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...