結果
問題 |
No.1610 She Loves Me, She Loves Me Not, ...
|
ユーザー |
![]() |
提出日時 | 2021-07-21 21:40:40 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 5 ms / 2,000 ms |
コード長 | 881 bytes |
コンパイル時間 | 3,902 ms |
コンパイル使用メモリ | 232,020 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-17 16:59:03 |
合計ジャッジ時間 | 4,975 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 32 |
ソースコード
#include <bits/stdc++.h> using namespace std; #include <atcoder/all> using namespace atcoder; using ll=long long; using Graph=vector<vector<int>>; #define MAX 2000000 #define MOD 1000000007 #define INF 1000000000000000000 int main(){ int N,M; cin>>N>>M; Graph G(N); vector<int> cnt(N,0); for(int i=0;i<M;i++){ int a,b; cin>>a>>b; a--;b--; G[a].push_back(b); G[b].push_back(a); cnt[a]++; cnt[b]++; } queue<int> q; for(int i=0;i<N;i++){ if(cnt[i]==1){ q.push(i); } } int ans=0; while(!q.empty()){ int v=q.front(); q.pop(); if(cnt[v]!=1){ continue; } ans++; cnt[v]--; for(auto nv:G[v]){ if(cnt[nv]>0){ cnt[nv]--; if(cnt[nv]==1){ q.push(nv); } } } } ans%=2; if(ans==1){ cout<<"Yes"<<endl; }else{ cout<<"No"<<endl; } }