3558: Power Seq-2018HBCPC D
内存限制:128 MB
时间限制:3.000 S
评测方式:文本比较
命题人:
提交:3
解决:1
题目描述
ch给你一个长度为n的数列,有两种操作:
1.set l r x :将[l,r]内的数全都赋值为x。
2.query l r :查询[l,r]中占主导地位的数字是哪个。
该数字占主导地位,意思是该数在该区间中出现的次数占了区间长度的一半以上(出现一半不算占主导地位)。若没有,则输出-1。
输入
单组数据。
第一行,一个数:n,表示序列长度(1<=n<=200000)。
第二行,n个数,分别为a1~an(0<=ai<=10^6)。
第三行,一个数Q,表示操作的个数(1<=Q<=200000)。
接下来的Q行,每行一个操作,如题目描述所示,数据保证输入合法。
输出
对于每个query操作,输出区间的主导数字是哪个。若不存在,输出-1。
样例输入 复制
10
1 2 1 2 1 2 1 2 1 2
10
query 1 10
query 2 10
query 1 9
set 1 5 3
query 2 3
query 1 10
query 1 9
set 1 10 1
query 2 3
query 1 10
样例输出 复制
-1
2
1
3
-1
3
1
1