제출 #1237216

#제출 시각아이디문제언어결과실행 시간메모리
1237216Sir_Ahmed_ImranSplit the Attractions (IOI19_split)C++17
18 / 100
53 ms15760 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; #define MAXN 200001 #define nl '\n' #define ff first #define ss second #define ll long long #define ld long double #define terminator main #define pll pair<ll,ll> #define add insert #define append push_back #define pii pair<int,int> #define all(x) (x).begin(),(x).end() vector<int> t; int vis[MAXN]; vector<int> a[MAXN]; void dfs(int v){ vis[v] = 1; t.append(v); for(auto & i : a[v]) if(!vis[i]) dfs(i); } vector<int> find_split(int n, int x, int y, int z, vector<int> p, vector<int> q) { for(int i = 0; i < p.size(); i++){ a[p[i]].append(q[i]); a[q[i]].append(p[i]); } int s = 0; for(int i = 0; i < n; i++) if(a[i].size() < 2) s = i; dfs(s); vector<int> ans(n); for(int i = 0; i < x; i++) ans[t[i]] = 1; for(int i = x; i < x + y; i++) ans[t[i]] = 2; for(int i = x + y; i < n; i++) ans[t[i]] = 3; 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...