# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1146852 | XXBabaProBerkay | Race (IOI11_race) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
#define F first
#define S second
#define PB push_back
#define MP make_pair
using ll = long long;
using pi = pair<int, int>;
template<typename T>
using vec = vector<T>;
template<typename T, const unsigned int N>
using arr = array<T, N>;
const int INF = 1e9 + 7;
int n, k, mx = 1e6, ans = INF;
int sz[100005], mn[1000005];
bool dead[100005];
vec<pi> adj[100005];
int pre_dfs(int u, int p)
{
sz[u] = 1;
for (auto v : adj[u])
if (v.F != p && !dead[v.F])
sz[u] += pre_dfs(v.F, u);