# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1149565 | Perl32 | Road Construction (JOI21_road_construction) | C++17 | 0 ms | 0 KiB |
//I wrote this code 4 u <3
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#ifdef LOCAL
#include "algo/debug.h"
#else
#define debug(...) 42
#endif
template<typename T> using normal_queue = priority_queue<T, vector<T>, greater<T>>;
template<typename T>
struct WT {
vector<vector<int>> t, pref;
vector<T> srt;
int sz;
WT() {}
WT(vector<T>& a) {
srt = a;
ranges::sort(srt);
srt.resize(unique(srt.begin(), srt.end()) - srt.begin());
sz = 1;
while (sz < (int) srt.size()) sz <<= 1;
t.resize(sz << 1);
pref.resize(sz << 1);
t[1] = a;