#2886. Face Produces Unhappiness

0

Face Produces Unhappiness

Face Produces Unhappiness

题目描述

有 NN 个人从西向东排成一队。 给定一个长度为 NN 的字符串 SS 表示这些人的朝向。 从西边数起第 ii 个人如果 SS 的第 ii 个字符为 LL 则面向西,为 RR 则面向东。 如果某人前面的人(即更靠东的人)面向与其相同的方向,则该人是快乐的。 但是如果某人前面没有其他人站着,则他/她不算快乐。 你可以执行以下操作任意次,次数在 00 到 KK(含)之间: 操作:选择整数 ll 和 rr 满足 1≤l≤r≤N1 \leq l \leq r \leq N,将队列的第 ll 到第 rr 人整体旋转 180180 度:即对于每个 i=0,1,...,r−li = 0, 1, ..., r-l,从西边数第 (l+i)(l + i) 个人将在操作后站在从西边数第 (r−i)(r - i) 的位置,并且如果他/她当前面向西则在操作后面向东,反之亦然。 最多可以得到多少个快乐的人?

输入格式

输入从标准输入给出,格式如下: NN KK SS

输出格式

输出在最多 KK 次操作后可以得到的最大快乐人数。

6 1
LRLRRL
3
13 3
LRRLRLRRLRLLR
9
10 1
LLLLLRRRRR
9
9 2
RRRLRLRLL
7

提示

NN 是满足 1≤N≤1051 \leq N \leq 10^5 的整数。 KK 是满足 1≤K≤1051 \leq K \leq 10^5 的整数。 ∣S∣=N|S| = N SS 的每个字符都是 LL 或 RR。如果我们选择 (l,r)=(2,5)(l, r) = (2, 5),得到 LLLRLLLLLRLL,此时从西边数第 22、33 和 66 个人是快乐的。

标签: AtCoder|abc140D

来源

AtCoder|abc140D