# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1174889 | gyg | Keys (IOI21_keys) | C++20 | 0 ms | 0 KiB |
#include "keys.h"
#include <bits/stdc++.h>
using namespace std;
#define vec vector
#define arr array
#define pii pair<int, int>
#define fir first
#define sec second
#define hset unordered_set
#define hmap unordered_map
const int N = 3e5 + 5, INF = 1e9;
// Zero indexing
int n;
arr<int, N> cl;
arr<vec<pii>, N> adj;
// hset<int> vs, cls;
// hmap<int, vec<int>> ngh;
// vec<int> ord;
// void bfs(int st) {
// vs.clear(), cls.clear(), ngh.clear(), ord.clear();
// vs.insert(st), ord.push_back(st);
// while (ord.size()) {
// int u = ord.back(); ord.pop_back();
// for (pii x : adj[u]) {
// int v = x.fir, c = x.sec;