# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1091214 | kawaii | Klasika (COCI20_klasika) | C++17 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
// #define int long long
#define fi first
#define se second
const int MAXN = 2e5 + 5;
int t, n, m, k, node = 1, val[MAXN], tin[MAXN], tout[MAXN], cnt = 0, max_dist = 0;
string s;
vector<int> adj[MAXN];
mt19937_64 rng;
struct Query{
char ch;
int x, y;
};
Query q[MAXN];
void dfs(int u){
tin[u] = ++cnt;
for(auto i: adj[u]) dfs(i);
tout[u] = cnt;
}
struct Node{
int size = 0;
vector<int> next[2];
void add(int x){
if(!size){