传统题 800ms 256MiB

B-5 年会抽奖

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

又到了公司年会的时间了!攀拓公司为了奖励员工一年的辛勤工作,决定举办一场抽奖大会。攀拓公司的员工都获得了一张或多张奖券,奖券上有一个整数,每张奖券上的整数各不相同。

在抽奖大会上,主持人根据大会进展,会做出以下举动之一:

  1. 宣布大于等于给定数字且最接近给定数字的奖券获奖。
  2. 询问某位员工手上的哪些奖券已经中奖。
  3. 指定整数的奖券获奖。

一张奖券可能多次中奖。请你帮助主持人告知他选择的举动的对应信息。

输入格式

输入第一行是一个正整数 NN ( 1N1051 \le N \le 10^5 ),表示奖券的数量。
接下来的 NN 行,每行有两个部分,用一个空格隔开,分别为员工编号以及奖券上的数字 xx ( 109x109-10^9 \le x \le 10^9 ),表示员工持有对应的奖券。员工编号为PAT加上六位数字,如PAT202412
随后的一行是一个正整数 QQ ( 1Q1051 \le Q \le 10^5 ),表示抽奖的次数。
接下来的 QQ 行,每行是以下三种格式之一:

  1. 1 x,表示大于等于xxx且最接近xxx的奖券获奖。
  2. 2 y,表示询问编号为yyy的员工手上哪些奖券获奖了。
  3. 3 x,表示数字为xxx的奖券获奖。

保证第 2 种举动的总次数不超过 100100 次。

输出格式

对于第1、3种举动,如果抽奖不合法(如找不到对应的奖券,或者不存在这样的奖券),输出ERROR,否则输出中奖的奖券对应的持有人的员工编号。
对于第二种举动,如果没有这个编号的员工,输出ERROR,否则在一行按输入顺序输出中奖的奖券编号,用空格隔开。如果没有中奖的奖券,也需要输出一行空行。

题目示例数据

10
PAT000001 1
PAT000003 5
PAT000002 4
PAT000010 20
PAT000001 2
PAT000008 7
PAT000010 18
PAT000003 -5
PAT102030 -2000
PAT000008 15
11
1 10
2 PAT000008
2 PAT000001
3 -10
1 9999
1 -10
3 2
1 0
3 1
2 PAT000001
3 -2000
PAT000008
15

ERROR
ERROR
PAT000003
PAT000001
PAT000001
PAT000001
1 2
PAT102030

PAT2024冬季重现赛

未参加
状态
已结束
规则
IOI
题目
11
开始于
2025-7-27 14:00
结束于
2025-7-27 17:30
持续时间
3.5 小时
主持人
参赛人数
50