鸿蒙人脸门禁对接业务系统:API与MQTT双通道实战
2026/9/13 19:28:29
具体题目描述如下:
IGMP 协议中,有一个字段称作最大响应时间(MaxResponseTime),HOST收到查询报文,解析出 MaxResponseTime 字段后,需要在 (0,MaxResponseTime](s)时间内选取随机时间回应一个响应报文,如果在随机时间内收到一个新的查询报文,则会根据两者时间的大小,选取小的一方剧新回应时间。
最大响应时间有如下计算方式:
当 MaxRespcode < 128,MaxRespTime = MaxRespcode;
当 MaxRespcode >= 128,MaxRespTime = ( mant | ex10 ) << ( exp + 3 );| 0 | 123 | 4567 || 1 | exp | mant |
注:exp 最大响应时间的高 5~7 位;mant 为最大响应时间的低4 位。
其中接收到的 maxRespcode 最大值为 255,以上出现所有字段均为无符号数。
现在我们认为 HOST 接收到查询报文时,选取的随机时间必定为最大值。
现给出 HOST 收到查询报文个数 C ,HOST 收到报文的时间 $T$,以及查询报文的最大响应时间字段值 M ,请计算出 HOST 发送响
应报文的时间。
第一行为查询报文个数C,后续每行分别为 HOST 收到报文时间T,及最大响应字段 M,以空格分割。
HOST 发送响应报文的时间。
补充说明:
用例确定只会发送一个响应报文,不存在计时结束后依然收到查询报文的情况。
输入:
3 0 20 1 10 8 20输出:
11示例说明:
收到3个报文:
最终得到最小响应报文时间为 11 秒。
输入:
2 0 255 200 60输出:
260示例说明:
收到2个报文: