如果两个人互相打电话(直接或者间接)则说他们在同一个电话圈里。例如\(a\)打给\(b\),\(b\)打给\(c\)\(c\)打给\(d\),\(d\)打给\(a\)则这四个人在同一个圈里;如果\(e\)打给\(f\),而\(f\)不打给\(e\)则不能嶊出\(e\)和\(f\)在同一个电话圈。输入\(n(n≤25)\)个人的\(m\)次电话找出所有的电话圈。人名只包含字母不超过\(25\)个字符,且不重复
首先用\(Floyd\)求出传遞闭包,即g[i][j]
表示i
是否直接或间接向j
打过电话当且仅当g[i][j]=g[j][i]=1
时二者处于同一个电话圈。构造一个新图在“一个电话圈里”的两个人之间连一條边,然后依次输出各个联通分量的所有人即可