제출 #1256804

#제출 시각아이디문제언어결과실행 시간메모리
1256804rhm_ganSplit the Attractions (IOI19_split)C++20
18 / 100
60 ms11336 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; const int N = 1e5 + 1; vector<int> g[N]; vector<int> res; bool vis[N]; int A, B, C; void dfs(int u) { vis[u] = 1; if (A) { res[u] = 1; A--; } else if (B) { res[u] = 2; B--; } else { res[u] = 3; C--; } for (auto v : g[u]) { if (!vis[v]) dfs(v); } } vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { A = a, B = b, C = c; res.resize(n); int m = p.size(); for (int i = 0; i < m; i++) { g[p[i]].push_back(q[i]); g[q[i]].push_back(p[i]); } int u = 0; for (int i = 0; i < n; i++) { if (g[i].size() == 1) { u = i; break; } } dfs(u); 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...