对于一个序列,定义其众数为序列中出现次数严格大于一半的数字。注意该定义与一般的定义有出入,在本题中请以题面中给出的定义为准。
一开始给定
有
:在 号序列末尾插入数字 。保证 号序列存在,且 。 :删除 号序列末尾的数字,保证 号序列存在、非空,且 。 :将 号序列顺次拼接,得到一个新序列,并询问其众数。如果不存在满足上述条件的数,则返回 。数据保证对于任意 , 是一个仍然存在的序列, ,且拼接得到的序列非空。注意:不保证 互不相同,询问中的合并操作不会对后续操作产生影响。 :新建一个编号为 的序列,其为 号序列后顺次添加 号序列中数字得到的结果,然后删除 对应的序列。此时序列 视为存在,而序列 被视为不存在,在后续操作中也不会被再次使用。保证 , ,序列 在操作前存在,且在操作前没有序列使用过编号 。
输入格式
输入的第一行包含两个正整数
接下来
接下来
输出格式
对于每次询问,一行输出一个整数表示对应的答案。
样例一
input
2 8 3 1 1 2 3 3 3 3 3 1 1 3 1 2 4 2 1 3 3 1 3 2 3 3 1 3 1 3 1 3 1 3
output
1 3 -1 3 -1
explanation
第一次询问查询序列
第二次询问查询序列
第三次询问询问序列 -1
。
样例二
input
4 9 1 1 1 2 1 3 1 4 3 4 1 2 3 4 1 1 2 3 2 1 2 2 3 3 3 1 2 3 1 4 4 1 4 4 1 4 4 3 4 1 2 3 4
output
-1 2 2 4
explanation
第一次询问查询序列
第四次询问查询序列
样例三
见附件下载。
该样例满足测试点
样例四
见附件下载。
该样例满足测试点
数据范围
对于所有测试数据,保证
测试点编号 | 特殊性质 A | 特殊性质 B | 特殊性质 C | ||
---|---|---|---|---|---|
否 | 否 | 是 | |||
是 | 是 | ||||
否 | 否 | ||||
否 | 是 | ||||
否 | 是 | ||||
否 | |||||
是 | 是 | 是 | |||
否 | 否 | ||||
否 | 是 | ||||
否 | 是 | ||||
否 |
- 特殊性质 A:保证
且没有操作 。 - 特殊性质 B:保证任意时刻任何序列中只有数字
和 。 - 特殊性质 C:保证没有操作
。
时间限制:
空间限制: