hdu 3394(点双连通)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3394

思路:题目的意思是要求无向图中的冲突边和不需要边的条数,如果一个块中有多个环,则该块中的每条边都是冲突边,而不能形成环路的边则为不需要边。于是我们可以求点双连通分量(块),统计一个块中点数与边数的关系,如果点数大于边数,则为不需要边,如果点数小于边数,则为冲突边。需要注意的地方:Tarjan求点双连通分量的时候,将块出栈时,只能出到u的子节点v为止,因为u作为割点极有可能是该块与别块公用的,这样若是每次都出栈到u,则会破坏其他块。

http://paste.ubuntu.com/5957032/

 

你可能感兴趣的:(HDU)