Submission #348038

#TimeUsernameProblemLanguageResultExecution timeMemory
348038tengiz05Split the Attractions (IOI19_split)C++17
7 / 100
83 ms8940 KiB
#include "split.h" #ifndef EVAL #include "grader.cpp" #endif #include <bits/stdc++.h> #define pb push_back using namespace std; const int N = 1e5+5; int n, m; vector<int> edges[N]; vector<int> find_split(int N, int a, int b, int c, vector<int> p, vector<int> q) { n=N; m = p.size(); for(int i=0;i<m;i++){ edges[p[i]].pb(q[i]); edges[q[i]].pb(p[i]); } vector<int> ans(n,3); int u=0; for(int i=0;i<n;i++)if(edges[i].size() == 1)u=i; vector<bool> used(n); for(int i=0;i<a;i++){ ans[u] = 1; used[u] = true; if(edges[u].size()==1)u=edges[u][0]; else { if(used[edges[u][0]])u=edges[u][1]; else u=edges[u][0]; } } for(int i=0;i<b;i++){ ans[u] = 2; used[u] = true; if(edges[u].size()==1)u=edges[u][0]; else { if(used[edges[u][0]])u=edges[u][1]; else u=edges[u][0]; } } return ans; }
#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...