问题 AV: 蒲公英

内存限制:256 MB 时间限制:5.000 S
评测方式:文本比较 命题人:
提交:9 解决:4

题目描述

在乡下的小路旁种着许多蒲公英,而我们的问题正是与这些蒲公英有关。
为了简化起见,我们把所有的蒲公英看成一个长度为 n 的序列a1,a2,…,an其中ai为一个正整数,表示第 i 棵蒲公英的种类编号。
而每次询问一个区间 [l,r] ,你需要回答区间里出现次数最多的是哪种蒲公英,如果有若干种蒲公英出现次数相同,则输出种类编号最小的那个。

输入

第一行两个整数n,m,表示有 n 株蒲公英,m 次询问。
接下来一行 n 个空格隔开的整数aia_iai,表示蒲公英的种类。
再接下来 m 行每行两个整数l0l_0l0,r0r_0r0,我们令上次询问的结果为 x(如果这是第一次询问,则 x=0)。
l=(l0+x−1)mod n+1,r=(r0+x−1)mod n+1,如果l>r,则交换l,r。
最终的询问区间为[l,r]。

输出

输出 m 行。
每行一个整数,表示每次询问的结果。

样例输入 复制

6 3
1 2 3 2 1 2
1 5
3 6
1 5

样例输出 复制

1
2
1

提示

1n40000
1≤m≤50000
1ai109

来源/分类