给定两个大小为 $n$ 的排列 $A$ 和 $B$。两个排列均包含从 $1$ 到 $n$ 的整数。你希望通过不超过 $n$ 次以下操作将 $A$ 转换为 $B$:
- 选择 $A$ 的一个子段 $[l; r]$,并将其按升序或降序排列。
注意,你不需要最小化操作次数,任何长度不超过 $n$ 的操作序列均可。
输入格式
第一行包含一个整数 $n$ ($1 \le n \le 500$),表示两个排列的大小。 第二行包含排列 $A_1, A_2, \dots, A_n$。 第三行包含排列 $B_1, B_2, \dots, B_n$。
输出格式
第一行输出一个整数 $m$ ($0 \le m \le n$),表示操作次数。 接下来的 $m$ 行输出操作描述。每行描述应格式化为 $l_i \ r_i \ t_i$ ($1 \le l_i \le r_i \le n$,$t_i$ 为 'I' 或 'D'),表示将子段 $[l_i; r_i]$ 按 (I) 升序或 (D) 降序排列。
如果存在多种解,输出其中任意一种即可。题目保证至少存在一种解。
样例
样例输入 1
5 2 4 5 1 3 5 4 3 2 1
样例输出 1
1 1 5 D
样例输入 2
5 5 4 3 2 1 3 2 5 1 4
样例输出 2
4 2 5 I 1 4 I 1 3 D 3 4 D
样例输入 3
5 3 1 4 5 2 3 1 4 5 2
样例输出 3
0