华为OD机试 - 打印文件(Python) | 机试题+算法思路+考点+代码解析 2023

Posted 坚果的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了华为OD机试 - 打印文件(Python) | 机试题+算法思路+考点+代码解析 2023相关的知识,希望对你有一定的参考价值。

打印文件

题目

有 5 台打印机打印文件,每台打印机有自己的待打印队列。
因为打印的文件内容有轻重缓急之分,所以队列中的文件有1~10不同的优先级,其中数字越大优先级越高。
打印机会从自己的待打印队列中选择优先级最高的文件来打印。
如果存在两个优先级一样的文件,则选择最早进入队列的那个文件。
现在请你来模拟这5台打印机的打印过程。

输入

每个输入包含 1 个测试用例,每个测试用例第 1 行给出发生事件的数量

N(0<N<1000)。
接下来有 N 行,分别表示发生的事件。
共有如下两种事件:

  1. IN P NUM,表示有一个拥有优先级 NUM 的文件放到了打印机 P 的待打印队列中。(0<P≤5,0<NUM≤10);
  2. OUT P,表示打印机 P 进行了一次文件打印,同时该文件从待打印队列中取出。(0<P≤5)。

输出

对于每个测试用例,每次OUT P事件,请在一行中输出文件的编号。
如果此时没有文件可以打印,请输出NULL
文件的编号定义为:IN P NUM事件发生第 X 次,此处待打印文件的编号为 X。编号从1开始。

示例一

以上是关于华为OD机试 - 打印文件(Python) | 机试题+算法思路+考点+代码解析 2023的主要内容,如果未能解决你的问题,请参考以下文章

华为OD机试 - 端口合并(Python) | 机试题算法思路 2023

华为OD机试 - 快递货车(Python) | 机试题算法思路 2023

华为OD机试 - 通信误码(Python) | 机试题算法思路 2023

华为OD机试 - 员工出勤(Python) | 机试题算法思路 2023

华为OD机试 - 寻找连续区间(Python) | 机试题算法思路 2023

华为OD机试 - 连续子串(Python) | 机试题算法思路 2023