FREQUENT  Frequent values
You are given a sequence of n integers a_{1} , a_{2} , ... , a_{n} in nondecreasing order. In addition to that, you are given several queries consisting of indices i and j (1 ≤ i ≤ j ≤ n). For each query, determine the most frequent value among the integers a_{i} , ... , a_{j}.
Input Specification
The input consists of several test cases. Each test case starts with a line containing two integers n and q (1 ≤ n, q ≤ 100000). The next line contains n integers a_{1} , ... , a_{n} (100000 ≤ a_{i} ≤ 100000, for each i ∈ {1, ..., n}) separated by spaces. You can assume that for each i ∈ {1, ..., n1}: a_{i} ≤ a_{i+1}. The following q lines contain one query each, consisting of two integers i and j (1 ≤ i ≤ j ≤ n), which indicate the boundary indices for the query.
The last test case is followed by a line containing a single 0.
Output Specification
For each query, print one line with one integer: The number of occurrences of the most frequent value within the given range.
Sample Input
10 3 1 1 1 1 1 1 3 10 10 10 2 3 1 10 5 10 0
Sample Output
1 4 3
A naive algorithm may not run in time!
hide comments
aditi:
20150104 12:31:55
Please give some more testcases..Getting WA 

tyler_durden:
20141223 10:04:25
what should you do in case of a tie .? 

Archangel:
20141117 00:33:58
how to break ties? for example if the input array is


Maulik Soneji:
20141107 15:53:56
Got many WAs and TLEs but finally did it.


harrypotter192:
20141025 19:42:13
Don't miss the "many test cases" part


Z:
20140831 23:42:26
a1,a2,..,an can be negative,be careful! 

yaswanth:
20140829 18:41:51
See that array is sorted ;)


hitesh091:
20140329 09:27:28
tle tle :( 
Added by:  Adrian Kuegel 
Date:  20070706 
Time limit:  1s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: ERL JSRHINO NODEJS PERL6 VB.NET 
Resource:  University of Ulm Local Contest 2007 