#27. 25年6月-华为实习(留学生)-3.VIP用户优先转发

题目描述
题解
题库

25年6月-华为实习(留学生)-3.VIP用户优先转发

题目内容

随着园区网络的高速发展大带宽、大流量成了主旋律,但是当网络带宽超过设备的处理能力时,可能导致网络拥塞,挤占一些高优先级的业务(如VIP用户流量),影响用户体验,所以对网络的用户体验优化成了园区网络的核心技术之一。

在你接到一个用户需求,希望提升VIP用户的流量优先级,在网络拥时优先调度。其中用户的唯一身份标识是其MAC地址(如:00-d8-01-ef-31-3e),所以我们需要在网络中配置所有VIP用户的MAC地址白名单,以便网络芯片转发引擎在执行流量转发时优先转发对应MAC地址的报文。

网络系统中VIP用户MAC地址配置格式为[xx-xx-xx-xx-xx-xx/M],其中标识MAC地址和掩码长度MAC地址由MAC地址48bit,共6字节组成,通常表示为6个十六进制数,格式为[xx-xx-xx-xx-xx-xx]。

如[00-d8-61-ef-31-3e]就是一个MAC地址掩码长度表示在进行MAC地址匹配时关注的BIT位数,掩码长度0转换成MAC地址掩码为[ff-ff-ff-ff-ff-00]相当于MAC地址最后8bit不关注如配置[00-e0-f0-01-01/32],其对应的MAC地址掩码为[ff-ff-f0-f0-00-00],能匹配上的VIP MAC地址范围是[00-e0-1c-01-00-00:00-e0-fc-01-ff-ff]

输入描述

输入第一行为整数n(1 ≤ n ≤ 100000),代表需要配置为VIP的MAC地址及其掩码个数。

接下来n行是对应VIP用户MAC地址及其掩码长度,格式为[xx-xx-xx-xx-xx-xx/M],其中M(0 ≤ M ≤ 48),MAC地址由数字和小写英文字母组成

然后是转发引擎待处理的报文MAC地址数目m(1 ≤ m ≤ 100)

接下来m行是转发引擎待处理的报文MAC地址,格式为[xx-xx-xx-xx-xx-xx]

输出描述

输出m个转发引擎待处理的报文MAC地址是否可以优先调度,是输出YES,不是则输出NO

样例1

输入

2
00-d8-61-ef-31-3e/48
00-e0-fc-00-ed-50/40
2
00-e0-fc-00-ed-66
00-d8-61-ef-31-3f

输出

YES
NO 

说明

以下是提取的内容:

00-e0-fc-00-ed-66在VIP MAC地址列表中可以匹配,因为00-e0-fc-00-ed-50/48表示匹配范围为00-e0-fc-00-ed-xx,其中xx不关注。

00-d8-61-ef-31-3f在VIP MAC地址列表中无法匹配。

样例2

输入

1
00-d8-61-ef-31-3e/0
1
02-12-13-14-15-16

输出

YES