Submission #425748

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
4257482021-06-13 10:54:32KoDWerewolf (IOI18_werewolf)C++17
100 / 100
926 ms93004 KiB
#include <bits/stdc++.h>
#include "werewolf.h"
template <class T> using Vec = std::vector<T>;
struct UnionFind {
Vec<int> par;
Vec<Vec<int>> children;
UnionFind(const int n) : par(n), children(n) {
std::iota(par.begin(), par.end(), 0);
}
int find(const int u) {
return par[u] == u ? u : par[u] = find(par[u]);
}
void absorb(int u, int v) {
u = find(u);
v = find(v);
if (u == v) {
return;
}
par[v] = u;
children[u].push_back(v);
}
std::pair<Vec<int>, Vec<std::pair<int, int>>> build(const int root) {
const int n = (int) par.size();
Vec<int> ord;
ord.reserve(n);
Vec<std::pair<int, int>> range(n);
int timer = 0;
auto dfs = [&](auto&& dfs, const int u) -> void {
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...