# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1126383 | whoknow | Factories (JOI14_factories) | C++20 | 0 ms | 0 KiB |
#include <factories.h>
#include <bits/stdc++.h>
#define ll long long
#define F first
#define S second
#define MAXN 500005
#define ii pair<int,int>
#define bit(i,j) ((i>>j)&1)
#define sz(i) (int)i.size()
#define endl '\n'
using namespace std;
const ll INF = 1e18;
int n, ntest;
vector<ii>g[MAXN];
int timedfs, Q;
ll best[MAXN], dist[MAXN];
bool A[MAXN], B[MAXN], del[MAXN];
int timed[MAXN], range[MAXN], sz[MAXN], par[MAXN], h[MAXN];
int f[2 * MAXN][20];
int minimize(int x, int y)
{
if(h[x] < h[y])
return x;
return y;
}
int log2(int x)
{
return 31 - __builtin_clz(x);
}
void build(int u, int p)