Submission #1215396

#TimeUsernameProblemLanguageResultExecution timeMemory
1215396brintonSplit the Attractions (IOI19_split)C++20
7 / 100
50 ms17480 KiB
#include <bits/stdc++.h> #include "split.h" using namespace std; vector<int> find_split(int N, int a, int b, int c, vector<int> p, vector<int> q) { vector<vector<int>> edges(N); vector<int> color(N,3); for(int i = 0;i < p.size();i++){ edges[p[i]].push_back(q[i]); edges[q[i]].push_back(p[i]); } vector<int> vis(N,false); function<void(int,int,int)> dfs = [&](int cur,int par,int cidx){ if(cidx < a) color[cur] = 1; else if(cidx < a+b) color[cur] = 2; vis[cur] = true; for(auto nxt:edges[cur]){ if(nxt == par) continue; if(vis[nxt]) continue; dfs(nxt,cur,cidx+1); } }; for(int i = 0;i < N;i++){ if(edges[i].size() < 2){ // start; dfs(i,-1,0); return color; } } dfs(0,-1,0); return color; }
#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...