如题。
本人蒟蒻,喜欢用vector存树。
看到题解区很多犇犇用邻接表存树。
(根本看不懂同学代码)
贴一下板子
存储
vector<int> e[MAXN];
int cnt, head[MAXN], to[MAXN], nxt[MAXN];
建边
e[u].push_back(v);
to[++cnt] = v;
nxt[cnt] = head[u];
head[u] = cnt;
遍历
for (auto v : e[u])
dfs(v);
for(int i = head[u]; i; i = nxt[i])
dfs(to[i]);