这道题的思路是使用深度优先搜索( DFSDFSDFS )来遍历检修点之间的相通关系,判断某个检修点是否能够通过 nnn 次数据包传递回到自身。
使用邻接表 adjadjadj _ listlistlist 表示检修点之间的相通关系,其中 adjadjadj _ listlistlist [ iii ] 存储了与检修点 iii 相通的其他检修点。
对于每个检修点 iii (从 111 到 nnn ),进行深度优先搜索( DFSDFSDFS ),检查是否存在一条路径使得数据包在经过 nnn 次传 递后能返回到 iii 。
在 DFSDFSDFS 中,通过设置 visitedvisitedvisited 数组来记录检修点是否被访问过,同时使用全局变量 isisis _ reachablereachablereachable 来标记是否找到了符合条件的路径。
如果找到了一条路径使得数据包在经过 nnn 次传递后能返回到 iii ,输出 " TTT ";否则,输出 " FFF "。
通过对每个检修点都进行上述判断,即可得到所有检修点的答案。
这种解法利用 DFSDFSDFS 的递归性质,从每个检修点开始深度优先搜索,判断是否存在符合条件的路径。