Xsquare And Number List
Practice
4.3 (17 votes)
Approved
Binary search
Implementation
Medium
Open
Sorting
Problem
33% Success 3521 Attempts 30 Points 1s Time Limit 256MB Memory 1024 KB Max Code

Xsquare loves to play with numbers a lot. Today, he has a multi set S consisting of N integer elements. At first, he has listed all the subsets of his multi set S and later replaced all the subsets with the maximum element present in the respective subset.

For example :

Consider the following multi set consisting of 3 elements S = {1,2,3}.


enter image description here

enter image description here

Now, Xsquare wonders that given an integer K how many elements in the final list are greater than ( > ) , less than ( < ) or equals to ( == ) K.

To make this problem a bit more interesting, Xsquare decided to add Q queries to this problem. Each of the queries has one of the following type.

  • > K : Count the number of elements X in the final list such that X > K.
  • < K : Count the number of elements X in the final list such that X < K.
  • = K : Count the number of elements X in the final list such that X == K.

Note:

  • Answer to a particular query can be very large. Therefore, Print the required answer modulo 109+7.
  • An empty subset is replaced by an integer 0.

Input

First line of input contains two space separated integers N and Q denoting the size of multiset S and number of queries respectively. Next line of input contains N space separated integers denoting elements of multi set S. Next Q lines of input contains Q queries each having one of the mentioned types.

Output

For each query, print the required answer modulo 109+7.

Constraints:

  • 1 ≤ N,Q ≤ 5*105
  • 1 ≤ K,Si ≤ 109
  • query_type = { < , > , = }

Warning :

Prefer to use printf / scanf instead of cin / cout.

Please login to use the editor

You need to be logged in to access the code editor

Loading...

Please wait while we load the editor

Loading...
Results
Custom Input
Run your code to see the output
Submissions
Please login to view your submissions
Similar Problems
Points:30
14 votes
Tags:
Ad-HocApprovedBinary SearchData StructuresMediumOpenSorting
Points:30
24 votes
Tags:
Binary SearchAlgorithmsC++
Points:30
8 votes
Tags:
Binary SearchImplementationAlgorithmsPointer