結果
問題 | No.1610 She Loves Me, She Loves Me Not, ... |
ユーザー | zhanghonghe2 |
提出日時 | 2021-07-21 21:57:27 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 908 bytes |
コンパイル時間 | 902 ms |
コンパイル使用メモリ | 76,260 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-17 18:13:04 |
合計ジャッジ時間 | 2,194 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 32 |
ソースコード
#include <iostream> #include <string> #include <vector> #include <queue> using namespace std; const int maxn=5100; vector<int> G[maxn]; queue<int> q; int degree[maxn]; int main(){ ios::sync_with_stdio(false); int N;int M; cin>>N>>M; for(int i=1;i<=M;i++){ int a, b; cin>>a>>b; G[a].push_back(b); G[b].push_back(a); degree[a]+=1; degree[b]+=1; } for(int i=1;i<=N;i++){ if(degree[i]==1) q.push(i); } int ans=0; while (!q.empty()){ int t=q.front(); if(degree[t]==0){ q.pop(); continue;; } ans+=1; q.pop(); for(int to:G[t]){ degree[to]-=1; if(degree[to]==1) q.push(to); } } if(ans%2==1){ cout<<"Yes"<<endl; }else{ cout<<"No"<<endl; } return 0; }