AlgoMooc
← 返回题库

P5202. 获取连通的相邻节点列表

中等通过率 37% · 提交 98 · 通过 36
哈希表模拟排序哈希集合

内,小慕负责维护N个转发节点,每个节点都有唯一的标识,并且每个节点拥有M个端口,节点之间通过端口进行报文通讯。为了实现业务隔离,服务器内的端口被划分为多个通讯平面(通过VLAN进行隔离,每个VLAN都有一个唯一的作为标识): 1、如果两个端口的VLAN_ID相同,说明这两个端口属于同一个VLAN,且处于连通状态; 2、如果两个端口的VLAN_ID不同,说明这两个端口属于不同VLAN,彼此不连通。 现在,小慕已知节点A的端口数量以及每个端口所属的VLAN_ID,同时还知道与节点A相邻的其他节点及其端口信息。 小慕需要找出与节点A处于连通状态的所有相邻节点的TB列表,并按TB从小到大的顺序输出。

提示:带虚线的词点一下有通俗解释。

输入描述

第1行:M VLAN_ID_1 ... VLAN_ID_m 数据间用空格隔开,分别表示:节点A有M个端口,各个端口所属的VLAN_ID,即后面VLAN_ID_m表示第m个端口的VLAN ID。 其中,网元内节点的端口数量M的取值范围为[1,4];端口划分VLAN_ID的取值范围为[1,4]; 第2行:N 表示与节点A相邻的其他节点有N个,N的取值范围为[0,4000) 第3行开始,将有N行数据,分别描述与节点A相邻的节点的TB和端口信息 输入格式为:TBx Mx VLAN_ID_xx ... VLAN_ID_xm 数据间有空格隔开,分别表示: 节点x的TBx,有Mx个端口,各个端口所属的VLAN_ID,即后面VLAN_ID_xm表示第m个端口的VLAN_ID。 其中,网元内节点TB的取值范围为(0,4294967295);

输出描述

第1行:N 表示与节点A连通的相邻节点个数,如 N为0,则无需输出其他信息 第2行:TB_1 ... TB_n 数据间用空格隔开,分别表示:与节点A连通的相邻节点的TB,个数为N,按从小到大的顺序输出。

示例

示例 1

输入

1 1
3
1024 2 1 2
1023 1 1
1025 3 2 2 3

输出

2
1023 1024

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。