Problem7000--一维围棋

7000: 一维围棋

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

小 w 和小 b 在下围棋,与传统围棋不同,他们是在一个由 $n$ 个格子排成一行构成的棋盘上博弈,每个格子至多放一个棋子。
我们设从左到右第 $i$ 个格子上的棋子为 $S_i,\ S_i \in {W,B,⋅}$,分别表示这是一个白色的棋子,或黑色的棋子,或没有棋子。
假如存在区间 $[l,r]$,使得 $r−l+1≥3$,并且这个区间内的格子全部都放了棋子。此时如果 $l+1,…,r−1$ 这些格子上的棋子同色,但 $l,r$ 这两个格子上的棋子与它们异色,则称 $l+1,…,r−1$ 这些格子上的棋子被占领了。比如,如果有 WWBBW.WB,则第三、四个格子上的棋子被占领了。
现在给定 $S_i$,保证现在没有任何棋子被占领。并且下一步是小 w 下,也就是说,小 w 要选一个位置放一个白棋子,要求小 w 放棋子之后没有白棋子被占领(保证一定存在方案可以做到这一点)。
小 w 希望他放棋子后占领黑棋子数量最多,但是他棋艺不精,所以找到了你来帮他算出这个数字。

Input

一行一个正整数 $n$ 以及一个长度为 $n$ 的只包含 B,W,.的字符串,表示 $\{S_i\}$。

Output

一行一个整数表示占领黑棋子的最大数量。

Constraints

对于 $30\%$ 的数据,保证恰好存在一个 $i$ 使得 $S_i=B$。
对于另 $5\%$ 的数据,保证 $\forall i,\ S_i \neq W$。
对于 $100\%$ 的数据,保证 $1≤n≤100$。

Sample 1 Input

5 .WB..

Sample 1 Output

1
我们可以把棋子放在第三个格子,这样第二个格子的黑棋子就会被占领。

Sample 2 Input

5 WB.B.

Sample 2 Output

0
假如把棋子放在第三个格子,那么这个棋子就会被占领,不符合题目要求。所以我们只能把棋子放在第五个格子并不占领任何棋子。

Sample 3 Input

6 BB.WB.

Sample 3 Output

1

100 W..B.BB.BBBW.WBB.W.BB.BBBBWW.BB.WWBBBB..BWW.BBBW.WB...BB.WW.WWBBB.WWB.WBB.BBB.BBW.B.W.BBBW.WWW.WW.W.

4

Source/Category