CF424E Colored Jenga

题目描述

托木斯克寒冷的冬夜非常无聊——在这样的天气下,没人愿意待在街上。托木斯克的居民们坐在温暖的公寓里打发时间,发明了许多不同的游戏。其中之一叫做“彩色积木”。 这个游戏需要三种颜色的木块:红色、绿色和蓝色。用这些木块搭建一个有 $ n $ 层的塔。每层由三个木块组成。每层木块可以是任意颜色,但总是紧挨着且彼此平行。下图展示了这样一个塔的例子。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF424E/5bfa10b7ff0cc446ecac2856516e57c041e0fdb2.png) 这个游戏由一名玩家进行。每分钟,玩家会投掷一个特殊的六面骰子。骰子的六个面分别为:两个绿色、两个蓝色、一个红色和一个黑色。每个面出现的概率相同。 如果骰子掷出红、绿或蓝,玩家必须在本分钟内从塔中抽取任意一个这种颜色的积木,且保持塔不会倒。如果无法抽取,则该分钟玩家什么也不做,只等待时间过去。如果骰子掷出黑色,同样什么也不做,一分钟后继续。禁止从塔的最顶层取积木(无论顶层是否已补齐)。 玩家将积木抽出后,必须将它放在塔顶,形成一个新层或补齐尚未完成的最顶层。新建层应和原有层保持一致的规则。如果顶层未补齐,禁止新开一层。 为保证塔不倒,除了最顶层之外的每一层都必须至少有一个积木。此外,如果某一层只剩下一个积木且这个积木不是中间那个,塔就会倒塌。 游戏在无法再取出任何积木且塔不会倒的情况下结束。 托木斯克的居民发明了这样一个有趣的游戏。我们想知道,如果玩家始终最优操作(即每次选择要取的积木以期望最小化游戏持续时长),这场游戏最多能持续多少分钟的期望? 你的任务是编写一个程序,计算期望的最多游戏分钟数。

输入格式

第一行输入一个整数 $ n $($ 2\leq n\leq 6 $),表示塔的层数。 接下来 $ n $ 行,描述塔从底到顶的各层(第一行是塔顶)。每一行为三个字符,表示该层从左到右的三个木块。每个字符为 'R'(红色)、'G'(绿色)或 'B'(蓝色)。

输出格式

输出一行,表示所求的数学期望值。如果输出的相对误差或绝对误差不超过 $ 10^{-6} $,则视为正确。

说明/提示

由 ChatGPT 5 翻译