#CF2128B. 双端队列处理

双端队列处理

每次测试时间限制:1.51.5
内存限制:256256 兆字节
题目描述 我们称一个长度为 nn 的数组 aa 的,当且仅当存在 1in41 \le i \le n-4 使得以下条件之一成立:

  • ai<ai+1<ai+2<ai+3<ai+4a_i < a_{i+1} < a_{i+2} < a_{i+3} < a_{i+4}
  • ai>ai+1>ai+2>ai+3>ai+4a_i > a_{i+1} > a_{i+2} > a_{i+3} > a_{i+4}

一个数组是 的当且仅当它不是坏的。例如:

  • a=[3,1,2,4,5,6]a = [3,1,2,4,5,6] 是坏的,因为 a2<a3<a4<a5<a6a_2 < a_3 < a_4 < a_5 < a_6
  • a=[7,6,5,4,1,2,3]a = [7,6,5,4,1,2,3] 是坏的,因为 a1>a2>a3>a4>a5a_1 > a_2 > a_3 > a_4 > a_5
  • a=[7,6,5,1,2,3,4]a = [7,6,5,1,2,3,4] 是好的。

你被给定一个排列 p1,p2,,pnp_1, p_2, \dots, p_n

你必须进行 nn 轮操作。在每一轮,你必须删除当前剩余数组 pp 的最左端或最右端的元素。设 qiq_i 为第 ii 轮被删除的元素。

选择每一轮删除哪个方向的元素,使得最终得到的数组 qq 是好的。可以证明在给定约束下,总是存在这样的操作序列。

^{*} 长度为 nn 的排列是由 nn 个互不相同的整数 11nn 按任意顺序组成的数组。例如 [2,3,1,5,4][2,3,1,5,4] 是一个排列,但 [1,2,2][1,2,2] 不是(22 出现两次),[1,3,4][1,3,4] 也不是(n=3n=3 但数组中有 44)。


输入
每个测试点包含多个测试用例。第一行包含一个整数 tt1t100001 \le t \le 10000)——测试用例的数量。
每个测试用例的第一行包含一个整数 nn5n1000005 \le n \le 100000)——数组的长度。
第二行包含 nn 个整数 p1,p2,,pnp_1, p_2, \dots, p_n1pin1 \le p_i \le n,且 pip_i 两两不同)——排列的元素。
保证所有测试用例的 nn 之和不超过 200000200000


输出
对于每个测试用例,输出一个长度为 nn 的字符串 ss。对于 1in1 \le i \le n,在第 ii 轮:

  • si=Ls_i = \text{L} 表示你删除了 pp 的最左端元素;
  • si=Rs_i = \text{R} 表示你删除了 pp 的最右端元素。

可以证明答案总是存在。如果有多个解,输出任意一个。


示例
输入

6
7
1 2 3 4 5 6 7
9
1 3 6 8 9 7 5 4 2
12
1 2 11 3 6 4 7 8 12 5 10 9
6
4 1 2 5 6 3
5
1 2 3 5 4
9
5 1 8 6 2 7 9 4 3

输出

RRRLLLL
LLRRLLRRL
LLLLLLLLLLLL
LLLLLL
LLLLL
LLLLLLLLL

注释
在第一个测试用例中,操作序列 RRRLLLL\text{RRRLLLL} 得到 q=[7,6,5,1,2,3,4]q = [7,6,5,1,2,3,4]

在第二个测试用例中,操作序列 LLRRLLRRL\text{LLRRLLRRL} 得到 q=[1,3,2,4,6,8,5,7,9]q = [1,3,2,4,6,8,5,7,9]