KQUERY - K-query

no tags 

Given a sequence of n numbers a1, a2, ..., an and a number of k- queries. A k-query is a triple (i, j, k) (1 ≤ i ≤ j ≤ n). For each k-query (i, j, k), you have to return the number of elements greater than k in the subsequence ai, ai+1, ..., aj.

Input

  • Line 1: n (1 ≤ n ≤ 30000).
  • Line 2: n numbers a1, a2, ..., an (1 ≤ ai ≤ 109).
  • Line 3: q (1 ≤ q ≤ 200000), the number of k- queries.
  • In the next q lines, each line contains 3 numbers i, j, k representing a k-query (1 ≤ i ≤ j ≤ n, 1 ≤ k ≤ 109).

Output

  • For each k-query (i, j, k), print the number of elements greater than k in the subsequence ai, ai+1, ..., aj in a single line.

Example

Input
5
5 1 2 3 4
3
2 4 1
4 4 4
1 5 2 

Output
2
0
3 

hide comments
jisan047: 2017-07-22 14:04:14

i use MST but getting WA :(

sharanx: 2017-07-20 20:57:20

Offline +segment tree=AC !!! :)

avsievich: 2017-07-20 15:27:11

fenwick + scanline - ac

starbot: 2017-06-29 20:41:24

BIT.,..,,.,..,.,is a gud ds

sandeepg97: 2017-06-29 04:57:57

Finally AC :)..MST :D

prakhar10_10: 2017-06-28 06:46:19

Woah! now my online persistent segment tree solution is accepted.

sandeepg97: 2017-06-27 12:42:33

Yeah, persistent segment tree also TLE. Can someone who has solved this help us out here?

prakhar10_10: 2017-06-27 01:56:06

Done with sorting and segment tree, but TLE with persistent segment tree.

prakhar10_10: 2017-06-27 01:50:56

Persistent segment tree is giving TLE

sandeepg97: 2017-06-26 13:49:30

Last edit: 2017-06-29 08:43:12

Added by:Duc
Date:2008-10-26
Time limit:0.184s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:© VNOI