问题 3943 --怕老鼠的魔术师

3943: 怕老鼠的魔术师

时间限制: 1 Sec  内存限制: 128 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

话说有两种老鼠,小黑鼠和小白鼠,共n只,排成一排……

遇到了个魔术师,他希望把小黑鼠和小白鼠分开,使得小白鼠在前面,小黑鼠在后面,照样排一排,但是他怕老鼠……- -||||于是乎他要用魔法把小黑鼠和小白鼠分开……

这种魔法姑且我们叫他隔空移物法,其实说确切点叫隔空换物,也就是把两只老鼠交换位置。但是因为需要精准的计算落地的位置,所以需要加一个距离x,也就是说如果他用了距离为x的隔空移物法,那么他可以将距离为x的两只老鼠相互交换。假设有位置i的老鼠和位置j的老鼠,其距离即为|i-j|

但是由于魔力有限,相同x的指令不能使用多次,即每个x只能使用1次,问要使得小白鼠在前面小黑鼠在后面最少需要使用多少次魔法?要求x<n,且如果无法完成,输出-1

输入

第一行输入n,表示n只老鼠(n<1000),第二行有n个字母,表示一排老鼠,其中白老鼠用W表示,黑老鼠用B表示。

输出

一个数,表示最少需要使用魔法数。如果无法完成,输出-1

样例输入

8
WWWWBBBB
4
BBWW

样例输出

0
2

来源

 

[提交][状态]