# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
232704 | UserIsUndefined | Split the Attractions (IOI19_split) | C++14 | 7 ms | 2688 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
//#include "split.h"
using namespace std;
vector<int> adj[100005];
int ok;
map<int,int> visited;
map<int,int> good;
int sz;
int now;
void dfs(int v){
visited[v] = true;
sz--;
good[v] = now;
if (sz == 0) return;
for (int i : adj[v]){
if (visited[i] == false){
dfs(i);
}
}
}
vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) {
vector<int> res(n, 0);
for (int i = 0 ; i < p.size() ; i++){
int x = p[i];
int y = q[i];
adj[x].push_back(y);
adj[y].push_back(x);
}
sz = a;
now = 1;
dfs(0);
sz = b;
now = 2;
for (int i = 0 ; i < n ; i++){
if (visited[i] == 0)dfs(i);
}
for (int i = 0 ; i < n ; i++){
res[i] = (good[i] == 0 ? 3 : good[i]);
}
return res;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |