题意: 思路: #include <cstdio> #include <algorithm> #include <cstring> using namespace std; const int N = 3e5 + 10; struct Edge{ int to,nex; }e[N << 1]; int head[N],dep[N],fa[N][20],idx,n,A,B; void add_edge(int u,int v){ e[idx].to = v; e[idx].nex = head[u]; head[u] = idx++; } vo...