Submission #428219

#TimeUsernameProblemLanguageResultExecution timeMemory
428219A_DSplit the Attractions (IOI19_split)C++14
7 / 100
653 ms1048580 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; const int N=1e5+100; vector<int> g[N]; vector<int> ret; int a,b,c; void dfs(int u,int p) { if(a!=0){ a--; ret[u]=1; } else if(b!=0){ b--; ret[u]=2; } else{ ret[u]=3; } for(auto x:g[u]){ if(x==p)continue; dfs(x,u); } } vector<int> find_split(int n,int A,int B,int C,vector<int> p,vector<int> q){ ret.resize(n); a=A; b=B; c=C; for(int i=0;i<n-1;i++){ g[p[i]].push_back(q[i]); g[q[i]].push_back(p[i]); } for(int i=0;i<n;i++){ if(g[i].size()==1){ dfs(i,i); break; } } return ret; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...