1509_队伍队列

2022-5-16 18:17| 发布者: Hocassian| 查看: 41| 评论: 0|原作者: 肇庆学院ACM合集

摘要:
C:\Users\Administrator\Downloads\2019-10-12-10-14-2-89503868017900-Problem List-采集的数据-后羿采集器.html

Pro.ID

1509

Title

队伍队列

Title链接

http://10.20.2.8/oj/exercise/problem?problem_id=1509

AC

24

Submit

128

Ratio

18.75%

时间&空间限制

  • Time Limit: 1000/500 MS (Java/Others)     Memory Limit: 32768/32768 K (Java/Others)
  • 描述

    队列和优先队列都是数据结构,很多计算机科学家都知道,连Alice也知道。然而,却不是很多人知道"队伍队列",尽管这在日常生活中经常可以见到。

    在队伍队列中,每个元素都属于一支队伍。当一个元素进队时,它首先从头到尾扫描队列,看看有没有自己的"队友"已在这个队列中。如果有,那么这个元素就插入到它的队友们的后面。如果没有,就插入到队列的最后,成为新的"队尾"。(只能认倒霉了)。出队的规则与普通队列一样:元素按队列的顺序从头到尾顺序出队。

    Alice请你编写一个程序模拟这样的队伍队列。

    输入

    输入有多个测试用例。

    每个测试用例第一行是一个整数 t ( 1 ≤ t ≤ 1000 ),表示队伍数量。接下来t行,每行第一个整数是这支队伍的人数,后面接着是这支队伍每个人的号码。号码范围是0 ~ 999999。每支队伍的人数不超过1000人。接下来是一个指令序列。有3种指令:

       ENQUEUE x  -  元素x进队

       DEQUEUE     -  队首元素出队

       STOP           -  本测试用例结束

    当t==0时,输入结束。

    警告:每个测试用例可以包含多达20万条指令,因此"队伍队列"的实现算法必须非常高效率,进队和出队的操作的时间复杂度应该是常数时间,即O(1)。

    输出

    Description

    队列和优先队列都是数据结构,很多计算机科学家都知道,连Alice也知道。然而,却不是很多人知道"队伍队列",尽管这在日常生活中经常可以见到。

    在队伍队列中,每个元素都属于一支队伍。当一个元素进队时,它首先从头到尾扫描队列,看看有没有自己的"队友"已在这个队列中。如果有,那么这个元素就插入到它的队友们的后面。如果没有,就插入到队列的最后,成为新的"队尾"。(只能认倒霉了)。出队的规则与普通队列一样:元素按队列的顺序从头到尾顺序出队。

    Alice请你编写一个程序模拟这样的队伍队列。

    Input

    输入有多个测试用例。

    每个测试用例第一行是一个整数 t ( 1 ≤ t ≤ 1000 ),表示队伍数量。接下来t行,每行第一个整数是这支队伍的人数,后面接着是这支队伍每个人的号码。号码范围是0 ~ 999999。每支队伍的人数不超过1000人。接下来是一个指令序列。有3种指令:

       ENQUEUE x  -  元素x进队

       DEQUEUE     -  队首元素出队

       STOP           -  本测试用例结束

    当t==0时,输入结束。

    警告:每个测试用例可以包含多达20万条指令,因此"队伍队列"的实现算法必须非常高效率,进队和出队的操作的时间复杂度应该是常数时间,即O(1)。

    Output

    对每个测试用例,首先输出一行:"Scenario #k",其中k表示第几个测试用例。接下来,对每个出队操作,输出那个出队的元素,一个一行。

    每个测试用例的后面输出一个空行,最后一个也不例外。

    Sample Input

    2
    3 101 102 103
    3 201 202 203
    ENQUEUE 101
    ENQUEUE 201
    ENQUEUE 102
    ENQUEUE 202
    ENQUEUE 103
    ENQUEUE 203
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    STOP
    2
    5 259001 259002 259003 259004 259005
    6 260001 260002 260003 260004 260005 260006
    ENQUEUE 259001
    ENQUEUE 260001
    ENQUEUE 259002
    ENQUEUE 259003
    ENQUEUE 259004
    ENQUEUE 259005
    DEQUEUE
    DEQUEUE
    ENQUEUE 260002
    ENQUEUE 260003
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    STOP
    0

    Sample Output

    Scenario #1
    101
    102
    103
    201
    202
    203

    Scenario #2
    259001
    259002
    259003
    259004
    259005
    260001

    Source

    样例输入

    2
    3 101 102 103
    3 201 202 203
    ENQUEUE 101
    ENQUEUE 201
    ENQUEUE 102
    ENQUEUE 202
    ENQUEUE 103
    ENQUEUE 203
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    STOP
    2
    5 259001 259002 259003 259004 259005
    6 260001 260002 260003 260004 260005 260006
    ENQUEUE 259001
    ENQUEUE 260001
    ENQUEUE 259002
    ENQUEUE 259003
    ENQUEUE 259004
    ENQUEUE 259005
    DEQUEUE
    DEQUEUE
    ENQUEUE 260002
    ENQUEUE 260003
    DEQUEUE
    DEQUEUE
    DEQUEUE
    DEQUEUE
    STOP
    0

    样例输出

    Scenario #1
    101
    102
    103
    201
    202
    203

    Scenario #2
    259001
    259002
    259003
    259004
    259005
    260001

    作者


    路过

    雷人

    握手

    鲜花

    鸡蛋

    最新评论

    返回顶部