查找满足条件的数据包(C++/C/Java/Py/Go)题解
华为OD机试新系统真题 华为OD上机考试新系统真题 7月12号 100分题型
华为OD机试新系统真题目录点击查看: 华为OD机试新系统真题题库目录|机考题库 + 算法考点详解
题目内容
在数据包传输系统中,为了优化网络带宽利用率,系统需要对数据包序列进行处理,找出每个数据包右侧第一个满足某些条件、优先级更高的数据包。
每个数据包的格式为:<priority>:<weight>,其中:
<priority>是数据包的优先级(正整数,1 ≤ priority ≤ 10^5,数值越大优先级越高)<weight>是数据包的权重(正整数,1 ≤ weight ≤ 10^5)
系统需要按照以下规则处理数据包:搜索整个数据包序列(从左到右),对于每个数据包,找出其右侧第一个同时满足如下条件的数据包:
- 条件1:目标数据包的
priority必须大于当前数据包的priority<