Submission #718143

#TimeUsernameProblemLanguageResultExecution timeMemory
718143mseebacherSplit the Attractions (IOI19_split)C++17
7 / 100
75 ms13984 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; #define MAX_N (int) 1e5+5 vector<int> ad[MAX_N]; vector<int> res; vector<bool> vis(MAX_N); void dfs(int x,int a,int b,int c){ if(vis[x]) return; vis[x] = 1; if(a > 0){ res[x] = 1; --a; }else if(b > 0){ res[x] = 2; --b; }else{ res[x] = 3; } for(auto s: ad[x]){ dfs(s,a,b,c); } } vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { for(int i = 0;i<(int)p.size();i++){ ad[p[i]].push_back(q[i]); ad[q[i]].push_back(p[i]); } res.assign(n,0); int start = 0; for(int i = 0;i<n;i++){ if(ad[i].size() == 1){ start = i; break; } } dfs(start,a,b,c); 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...