Submission #778802

#TimeUsernameProblemLanguageResultExecution timeMemory
778802FEDIKUSNewspapers (CEOI21_newspapers)C++17
4 / 100
1 ms340 KiB
#include<bits/stdc++.h> using namespace std; const int maxn=1010; bool moze=true; vector<int> g[maxn]; pair<int,int> dfs(int node,int par=1,int parent=-1){ pair<int,int> ret={0,0}; int klkf=0; int klks=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(temp.first>1) klkf++; if(temp.second>1) klks++; } if(klkf>2 || klks>2) moze=false; if(par^1) ret.first+=1; else ret.second+=1; 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; } if(moze) cout<<"YES\n1\n1"; else cout<<"NO\n"; 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...