#P1025. 风语花田
风语花田
题目描述
风语镇外有一片很大的花田,田地里一共种着 朵灵花,它们从左到右排成一列。第 朵灵花有一个种类编号 ,编号是一个正整数。
镇上的记录员每天都会查看某一段连续花田。他一共会提出 次询问,每次给出一段区间 ,你需要回答这段区间中出现次数最多的灵花种类。
如果有多个种类在区间中出现次数相同,并且都达到了最多次数,那么输出种类编号最小的那一个。
需要注意的是,记录员为了防止别人提前知道询问内容,对输入的询问进行了加密。因此,你的程序必须按照顺序在线处理每一次询问。
设上一次询问的答案为 。如果当前是第一次询问,则 。输入中给出的两个数为 ,真实询问区间按照下面的方式计算:
如果 ,则交换 。
最终需要回答的就是区间 中出现次数最多、若次数相同则种类编号最小的灵花编号。
输入格式
第 行包含两个整数 ,分别表示灵花数量和询问次数。
第 行包含 个整数 ,其中 表示第 朵灵花的种类编号。
接下来 行,每行包含两个整数 ,表示一次经过加密的询问。
输出格式
对于每次询问,输出一行一个整数,表示该次询问的答案。
样例
6 3
1 2 3 2 1 2
1 5
3 6
1 5
1
2
1
样例说明
数据范围
- 对于 的数据,保证 。
- 对于 的数据,保证 ,,,。