CF1157C2 Increasing Subsequence (hard version)

题目描述

给你一个长度为 $n$ 的序列,每次取出当前序列中最左或最右的数字,每次取出的数都要严格大于上一次取出的数,求最多取出多少数字。

输入格式

第一行一个整数 $n (1 \leq n \leq 2 \times 10^5)$。 第二行 $n$ 个不超过 $n$ 的整数表示原序列。

输出格式

第一行输出最多取出的数字个数 $k$。 第二行按顺序输出 $k$ 个字符 `L` 或 `R` 表示每次取左边或右边。 多解输出任意一组。

说明/提示

The first example is described in the problem statement.