# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
300769 | vipghn2003 | Ball Machine (BOI13_ballmachine) | C++14 | 282 ms | 32380 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>
#define fi first
#define se second
#define pii pair<int,int>
#define mp make_pair
using namespace std;
const int N=1e5+5;
int n,q,mn[N],pos[N],cnt,col[N],p[N][20];
vector<int>adj[N];
void dfs(int u,int par=-1)
{
for(int i=1;i<=18;i++) p[u][i]=p[p[u][i-1]][i-1];
mn[u]=u;
for(auto&v:adj[u])
{
if(v==par) continue;
p[v][0]=u;
dfs(v,u);
mn[u]=min(mn[u],mn[v]);
}
}
void go(int u,int par=-1)
{
vector<pii>order;
for(auto&v:adj[u]) if(v!=par) order.push_back(mp(mn[v],v));
sort(order.begin(),order.end());
for(auto&v:order) go(v.se,u);
Compilation message (stderr)
# | 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... |