右侧点在更新某一左侧点时最多只会更改一次连接?不会出现可以更改多次的情况?如代码:
bool dfs(int u) { for(int i=head[u];i;i=a[i].next) { int v=a[i].to; if(!finds[v]) { finds[v]=1; if(!belong[v]||dfs(belong[v])) { //finds[v]=0; belong[v]=u; return 1; } } } return 0; }
如代码中的注释的句子,加不加都可以过模板,加了是多此一举吗?求解答。