【队列】 打印机
You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.
题目描述
办公室里只有一台打印机,但是有很多文件需要打印,因此打印任务不可避免地需要等待。有些打印任务比较急,有些不那么急,每个任务都有一个数字来表示优先级,优先级越高表示任务越急。
打印机的运作方式如下:首先从打印队列里取出一个任务J,如果队列里有比J更急的任务,则直接把J放到打印队列尾部,否则打印任务J(此时不会把它放回打印队列)。 输入打印队列中各个任务的优先级以及我们想打印的任务的位置(从0开始算),输出该任务完成的时刻。所有任务都需要1分钟打印。
例如,打印队列为{1,1,9,1,1,1},目前处于0位置的任务最终完成时刻为5。
输入格式
第一行两个整数n,m分别表示总的任务数目和我们想打印的任务在其中的编号 第二行n个整数x,表示编号为0至n-1的任务的优先级
输出格式
一个整数,编号为m的任务完成所需的时间
样例 #1
样例输入 #1
6 0
1 1 9 1 1 1
样例输出 #1
5
提示
队列、单调队列、优先队列
- Status
- Done
- Problem
- 18
- Open Since
- 2025-4-19 8:15
- Deadline
- 2025-4-27 23:59
- Extension
- 24 hour(s)