Preparing NOJ

B. Give you a Bag

2000ms 32767K

Description:

    有这样一种类似于闭包的数据结构,支持两种操作:
    1 x
    把元素 x 放入 这个包内

    2
    从包内丢弃一个元素

    现在我们给你一个操作带返回值的操作序列,我们需要你猜这个数据结构是什么。
    你有以下选择:
    Stack 栈(先进后出)
    Queue 队列(先进先出)
    Priority-queue 优先权队列( 每次都丢弃最大元素的最大堆 )

Input:

    有多组测试用例。每个测试案例开始行包含一个整数N(1 <= N <=1000)。以下N行,每行一个操作。 对于操作一,输入为1 x,x代表将要放入数据结构里面的数,对于操作二,输入2 x,这里的x代表返回值,即执行操作2之后,返回的一个值(例如优先权队列,则返回的是最大值)。x的值始终是一个正整数不大于100。输入到文件尾。输入文件的大小不超过1MB。

Output:

    对于每个测试用例,输出下面语句中的其中一个:
    stack:表示判断这一定是一个堆栈。
    queue:表示判断这一定是一个队列。
    priority queue: 表示判断这一定是一个优先级队列。
    impossible: 表示判断它不可能是一个堆栈,队列或优先级队列。
    not sure: 表示判断它可能是以上所说三种数据结构中的多种。

Sample Input:

6
1 1
1 2
1 3
2 1
2 2
2 3
6
1 1
1 2
1 3
2 3
2 2
2 1
2
1 1
2 2
4
1 2
1 1
2 1
2 2
7
1 2
1 5
1 1
1 3
2 5
1 4
2 4

Sample Output:

queue
not sure
impossible
stack
priority queue

Note:

本题由旧版NOJ导入,来源:ACM爱好者协会

Info

NOJ

Provider NOJ

Code NOJ1854

Tags

Submitted 1

Passed 1

AC Rate 100%

Date 04/20/2019 10:03:10

Related

Nothing Yet