ICPC 王国决定建造一座新城堡。城堡的边界被设计为一个直角多边形,其边平行于 $x$ 轴或 $y$ 轴。为了最大限度地减少敌方攻击造成的破坏,王国希望最小化该直角多边形的周长。让我们详细说明一下。
一个具有 $n$ 个顶点且坐标为整数的直角多边形 $P$ 若能实现一个长度为 $n$、由字母 L 和 R 组成的转弯序列 $S$,是指存在一种沿 $P$ 边界的逆时针遍历方式,使得遍历过程中在 $P$ 的顶点处所做的转弯构成了转弯序列 $S$;凸顶点的左转对应 L,凹顶点的右转对应 R。例如,图 B.1(a) 中的直角多边形实现了长度为 16 的转弯序列 $S = \text{RLLRLLLRRLLRLRLL}$。另一个长度为 14 的转弯序列 $S = \text{LLRLLRLLRLRLLR}$ 可以由图 B.1(b) 和 B.1(c) 中的直角多边形实现。注意,一个转弯序列在整数平面上可以有无穷多种直角多边形实现方式。
如果一个多边形除了相邻边的公共端点外没有其他边相交,则称其为简单多边形。如果一个多边形与垂直于某坐标轴的直线的交集至多为一个线段,则称该多边形关于该轴是单调的。若多边形关于 $x$ 轴和 $y$ 轴均单调,则称为 2-单调;若仅关于其中一个轴单调,则称为 1-单调。例如,图 B.1(a) 中的多边形是 1-单调的,因为它仅关于一个轴($x$ 轴)单调,而图 B.1(b) 和 B.1(c) 中的多边形是 2-单调的。如果任何实现该转弯序列的简单直角多边形都是 $t$-单调的($t = 1, 2$),则称该转弯序列为 $t$-单调的。
图 B.1 (a) 一个实现 1-单调转弯序列 RLLRLLLRRLLRLRLL 的简单 1-单调直角多边形(从标记顶点开始)。(b) 一个实现 2-单调转弯序列 LLRLLRLLRLRLLR 的简单 2-单调直角多边形(从标记顶点开始)。(c) 针对 (b) 中转弯序列的最小周长 2-单调直角多边形。
直角多边形的周长是其各边长度之和。图 B.1(b) 中多边形的周长为 18,但这并不是 $\text{LLRLLRLLRLRLLR}$ 的最小周长。其最小周长应为 16,如图 B.1(c) 所示。
给定一个 $n$ 个转弯的 $t$-单调转弯序列($t = 1, 2$),编写一个程序来计算实现该输入 $t$-单调转弯序列的简单 $t$-单调直角多边形的最小周长。
输入格式
程序从标准输入读取数据。输入为一行,包含一个由两个大写字母 L 和 R 组成的 $n$ 个转弯的字符串,该字符串是一个 $t$-单调转弯序列,其中 $t = 1, 2$ 且 $4 \leq n \leq 10^{t+3}$。
输出格式
程序向标准输出写入数据。仅打印一行,包含一个正整数,即实现输入 $t$-单调转弯序列的简单 $t$-单调直角多边形的最小周长($t = 1, 2$)。
样例
样例 1
LLRLLRLLRLRLLR
样例 1 输出
16
样例 2
RLLRLLLRRLLRLRLL
样例 2 输出
20
样例 3
LLRRLLLLRRLL
样例 3 输出
16
样例 4
RLLRLLRLLRLL
样例 4 输出
12