插电前的摊位。CC BY-SA 4.0,作者 Dietmar Rabich,来自维基共享资源
经过多日的工作,你几乎已经完成了圣诞集市摊位的搭建。现在只剩下最后一件事要做:插上灯串。当你插上电源线时,你发现自己带错了灯——你原本计划带一串蓝色的灯,但相反,这些灯的颜色是红、绿、蓝三色的!当你绝望地靠在摊位上时,你不小心碰到了其中一个灯泡,它立刻改变了颜色。你注意到,每次你触摸一个灯泡时,它都会随机变成三种颜色之一,每种颜色的概率均等。
集市在五个小时后就要开始了,你根本没有足够的时间把这串灯从摊位上拆下来并安装你想要的灯。至少,你希望所有的灯都具有相同的颜色,无论那是哪种颜色。使所有灯泡都具有相同颜色所需的最小期望触摸次数是多少?
例如,考虑第一个样例输入,假设你不断触摸红灯直到它变成蓝色。每次你触摸它时,新的颜色要么是红色、绿色,要么是蓝色。你触摸它直到它变成蓝色的期望次数是 $3$。
输入格式
输入包含:
- 第一行包含一个整数 $n$ ($1 \le n \le 100$),表示灯串上灯泡的数量。
- 第二行包含 $n$ 个字符,每个字符为
'r'、'g'或'b',表示初始时灯泡的颜色。
输出格式
输出在采用旨在最小化期望触摸次数的最优策略下,使所有灯泡具有相同颜色所需的期望触摸次数。
你的答案与标准答案的绝对误差或相对误差应不超过 $10^{-6}$。
样例
输入样例 1
2 rb
输出样例 1
3
输入样例 2
3 ggg
输出样例 2
0
输入样例 3
5 rgbrg
输出样例 3
7.5