KQUERYO - K-Query Online

题意翻译

### 题目描述 给出一个长度为 $n$ 的序列,$q$ 个询问,询问 $[i,j]$ 区间大于 $k$ 的数的个数 ### 输入格式 * 第一行:$n\space (1\le n\le 3\times 10^4)$ * 第二行:$n$ 个整数 $a_1, a_2 .. a_n \space (1 ≤ a_i ≤ 10^9) $ * 第三行:$q\space (1\le q\le 2\times 10^5)$,询问个数 * 接下来 $q$ 行,每行三个数 $a,b,c$,你需要进行以下操作 * i = a xor last_ans * j = b xor last_ans * k = c xor last_ans 其中 last_ans 为上一次询问的答案,定义初始 last_ans 为0 。 【数据范围】 $1\le k \le10^9$ 如果 $i>j$,定义答案为 $0$。 ### 输出格式 对于每个询问,单独输出一行表示答案

题目描述

Given a sequence of n numbers a $ _{1} $ , a $ _{2} $ , ..., a $ _{n} $ and a number of k-queries. A k-query is a triple (i, j, k) (1 greater than k in the subsequence a $ _{i} $ , a $ _{i+1} $ , ..., a $ _{j} $ .

输入输出格式

输入格式


- Line 1: n (1 - Line 2: n numbers a $ _{1} $ , a $ _{2} $ , ..., a $ _{n} $ (1 - Line 3: q (1 - In the next q lines, each line contains 3 numbers a, b, c representing a k-query. You should do the following: - i = a xor last\_ans - j = b xor last\_ans - k = c xor last\_ans After that 1 Where last\_ans = the answer to the last query (for the first query it's 0).

输出格式


For each k-query (i, j, k), print the number of elements greater than k in the subsequence a $ _{i} $ , a $ _{i+1} $ , ..., a $ _{j} $ in a single line.

输入输出样例

输入样例 #1

6
8 9 3 5 1 9
5
2 3 5
3 3 7
0 0 11
0 0 2
3 7 4

输出样例 #1

1
1
0
0
2