CF126E Pills

题目描述

医生给他的病人开了药,药物用药片来表示。每片药由一个外壳和里面的治疗粉末组成。外壳是由两半构成,每一半有一种颜色:蓝色、红色、白色或黄色。 医生希望将 $28$ 片药整齐地放入一个 $7 \times 8$ 的矩形盒子里。注意,每片药占据两个相邻的格子,每个格子正好包含药片的一半。最终的布局会形成一个 $7 \times 8$ 的四色图案。 医生认为,如果药片能组成某种特殊的图案,患者恢复得会更快。然而,要让药片精确地按照要求摆放并不容易,因此他请求你的协助。 医生手中有 $10$ 种不同颜色搭配的药片。每种药片的疗效相同,所以具体用哪 $28$ 片药并无所谓。 请你帮助医生将药片放入盒子,形成他所要求的图案。如果无法完全实现这个要求,那么至少要让药片摆放后的图案与医生想要的图案相似,即 $56$ 个格子中匹配颜色的格子数尽量多。

输入格式

前 $7$ 行表示医生的目标图案,每行有 $8$ 个字符,字符可以是 "B"(蓝色)、"R"(红色)、"W"(白色)与 "Y"(黄色)。 接下来的四行中是 $10$ 个数字,依次表示以下颜色组合的药片数量: “BY” “BW” “BR” “BB” “RY” “RW” “RR” “WY” “WW” “YY” 这些数字在 $0$ 到 $28$ 之间,并保证至少总共有 $28$ 片药。

输出格式

第一行输出最大匹配颜色的格子数。 接下来输出 $13$ 行,每行 $15$ 个字符,表示药片的最优摆放位置。奇数行和奇数列的交叉点应填入字符 "B"、"R"、"W" 和 "Y"。其他位置使用字符 "."、"-" 和 "|" 来表示药片的结构。具体示例请参考样例输出。 如有多个合适的摆放方案,输出任意一个即可。 **本翻译由 AI 自动生成**