Submission #1255821

#TimeUsernameProblemLanguageResultExecution timeMemory
1255821nerrrminSplit the Attractions (IOI19_split)C++20
11 / 100
50 ms15816 KiB
#include "split.h" #define pb push_back using namespace std; const int maxn = 3e5 + 10; int m, deg[maxn]; vector < int > g[maxn]; int used[maxn], lt; void dfs(int beg, int from) { if(!lt)return; used[beg] = 2; lt --; if(!lt)return; for (auto nb: g[beg]) { if(used[nb])continue; dfs(nb, beg); } } vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { m = p.size(); for (int i = 0; i < m; ++ i) { g[p[i]].pb(q[i]); g[q[i]].pb(p[i]); deg[p[i]] ++; deg[q[i]] ++; } lt = b; dfs(1, 0); for (int i = 0; i < n; ++ i) { if(!used[i]) { used[i] = 1; break; } } for (int i = 0; i < n; ++ i) if(!used[i])used[i] = 3; vector < int > res; for (int i = 0; i < n; ++ i) res.pb(used[i]); return res; }
#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...