int findc(int rt)
{
int l = 0, r = 0;
q[r++] = rt;
while(l < r)
{
int u = q[l++];
siz[u] = 1;
for(int i = head[u]; i; i = e[i].nxt)
{
int v = e[i].to;
if(used[v]) continue;
q[r++] = v;
}
}
for(int i = r - 1; i >= 0; i--)
{
int u = q[i];
if(siz[u] * 2 >= r) return u;
}
return -1;
}
这样的写法是对的吗