# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1174567 | Pacybwoah | Balanced Tree (info1cup18_balancedtree) | C++20 | 4097 ms | 2000 KiB |
#include<iostream>
#include<vector>
#include<algorithm>
#include<utility>
#include<set>
#include<cmath>
using namespace std;
typedef long long ll;
const int inf = 1e9;
vector<vector<int>> graph;
struct reroot{
vector<int> vec, dp1, dp2;
int n;
reroot(int _n){
n = _n;
graph.resize(n + 1);
vec.resize(n + 1);
dp1.resize(n + 1);
dp2.resize(n + 1);
}
void set_1(int x){
vec[x] = 1;
}
void dfs1(int node, int parent){
if(vec[node]) dp1[node] = 0;
else dp1[node] = inf;
for(auto &x: graph[node]){
if(x == parent) continue;
dfs1(x, node);
dp1[node] = min(dp1[node], dp1[x] + 1);
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |