故障通知和自检
某网络由若干节点组成,该网络具有一套故障通知及自检模型,如图所示:
规则:
节点有两种类型:普通节点和关键节点;两种节点都有可能产生故障,即为故障源。
故障源会将异常信息传到所有节点,如图所示:节点 60 的故障源,节点指向的下游节点 20 和 10 会收到异常信息。
满足以下规则之一需要自检:
故障源一定要自检;若故障源为关键节点,也会要求其所有上游节点自检。
收到异常信息的关键节点需要自检;这些关键节点也会要求其所有上游节点自检。
现在给出一批节点及其上下游关系,找到所有需要自检的节点,并以节点编号升序输出。
输入:
第一个参数为节点及其上下游关系 nodes,nodes[i] = [节点id, [下游节点id]],1 <= nodes.length <= 100
第二个参数为关键节点列表 keyNodes,0 <= keyNodes.length <= 1000
第三个参数为故障源节点 faultSrc
注: 1 <= 节点id <= 10000