結果
問題 |
No.1610 She Loves Me, She Loves Me Not, ...
|
ユーザー |
|
提出日時 | 2021-07-23 17:18:00 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 8 ms / 2,000 ms |
コード長 | 1,172 bytes |
コンパイル時間 | 1,999 ms |
コンパイル使用メモリ | 206,928 KB |
最終ジャッジ日時 | 2025-01-23 07:40:21 |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 32 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define REP(i, n) for (int i = 0; i < (int)(n); i++) #define RREP(i, n) for (int i = (int)(n); i >= 0; i--) #define rep(i, a, n) for (int i = (a); i < (int)(n); i++) #define rrep(i, a, n) for (int i = (a); i >= (int)(n); i--) #define ALL(obj) (obj).begin(), (obj).end() #define rALL(obj) (obj).rbegin(), (obj).rend() using ll = long long; using vi = vector<int>; using vii = vector<vector<int>>; using P = pair<int, int>; int main() { int N, M; cin >> N >> M; vii G(N); map<int,int> mp; REP(i,M) { int a, b; cin >> a >> b; a--; b--; G[a].push_back(b); G[b].push_back(a); mp[a]++; mp[b]++; } int cnt = 0; // 操作回数 queue<int> st; // 辺1の頂点 for(auto m: mp) if(m.second == 1) st.push(m.first); while(st.size()) { int cur = st.front(); st.pop(); if(mp[cur] == 0 ) continue; cnt++; mp[cur]--; for(auto v: G[cur]) { mp[v]--; if(mp[v] == 1) st.push(v); } } if(cnt%2 == 0) cout << "No" << endl; else cout << "Yes" << endl; return 0; }