Submission #778797

#TimeUsernameProblemLanguageResultExecution timeMemory
778797FEDIKUSNewspapers (CEOI21_newspapers)C++17
0 / 100
1 ms340 KiB
#include<bits/stdc++.h> using namespace std; const int maxn=1010; vector<int> g[maxn]; pair<int,int> dfs(int node,int par=1,int parent=-1){ pair<int,int> ret={0,0}; for(int i:g[node]){ if(i==parent) continue; auto temp=dfs(i,par^1,node); ret.first+=temp.first; ret.second+=temp.second; } if(par&1) ret.first++; else ret.second++; return ret; } int main(){ int n,m; cin>>n>>m; for(int i=1;i<=m;i++){ int u,v; cin>>u>>v; g[u].push_back(v); g[v].push_back(u); } if(m!=n-1){ cout<<"NO\n"; return 0; } auto res=dfs(1); if(res.first>2 && res.second>2){ cout<<"NO\n"; return 0; }else cout<<"YES\n1\n1"; return 0; } /* 7 6 1 2 1 3 1 4 1 5 1 6 1 7 6 6 1 2 2 3 3 1 1 4 2 5 3 6 */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...