P10873 [COTS 2022] 帽子 Šeširi

题目背景

译自 [Izborne Pripreme 2022 (Croatian IOI/CEOI Team Selection)](https://hsin.hr/pripreme2022/) D1T3。$\texttt{3s,0.5G}$。 喜欢小圆!

题目描述

$N$ 个 OIer 头上戴着红色或者白色的帽子。每个人只能看到别人的帽子颜色,他们会根据别人的帽子颜色猜测自己头上帽子的颜色。 他们想要构造一组猜测策略,满足以下条件: - 设有 $b$ 人戴了白色帽子,其中**至少**有 $\lfloor\frac{b}{2}\rfloor$ 人猜对自己帽子的颜色。 - 设有 $c$ 人戴了红色帽子,其中**至少**有 $\lfloor\frac{c}{2}\rfloor$ 人猜对自己帽子的颜色。 请帮助他们找到一种策略,使得在 $2^N$ 种可能的情况中都满足条件。

输入格式

一行一个整数 $N$。

输出格式

输出 $N$ 行,每行一个长度为 $2^{N-1}$ 的字符串,由 $\texttt{B},\texttt{C}$ 组成。 第 $i$ 行的字符串描述了第 $i$ 个 OIer 的策略。具体地说: - 定义 $f(S)$ 为:将所有长度为 $(N-1)$ 的由 $\texttt{B},\texttt{C}$ 组成的字符串按照字典序排序后,$S$ 的排名。 - 记 $x$ 为第 $i$ 行输出的字符串,$s_i\in \{\texttt{B},\texttt{C}\}$ 为第 $i$ 个 OIer 头上戴的帽子颜色。其中 $\texttt{B}$ 是白色(克罗地亚语「bijela」),$\texttt{C}$ 是红色(克罗地亚语「crvena」)。 - 记 $y=\overline{s_1s_{2}\cdots s_{i-1}s_{i+1}\cdots s_n}$。注意左边是高位。 - 第 $i$ 个 OIer 会猜测的颜色为 $x_{f(y)}$。 可参阅【样例解释】。

说明/提示

#### 样例解释 以样例 $2$ 为例。 当 $s=\texttt{CCC}$ 时,对于第 $1$ 个 OIer,$x=\texttt{BBCC}$,$y=\texttt{CC}$。显然 $f(y)=4$,所以他会猜测 $x_4=\texttt{C}$。 #### 计分方式 | 测试点编号 | $N=$ | 分值 | |:-----:|:------:|:-------:| | $1$ | $4$ | $7$ | | $2$ | $5$ | $7$ | | $3$ | $6$ | $7$ | | $4$ | $7$ | $7$ | | $5$ | $8$ | $7$ | | $6$ | $9$ | $7$ | | $7$ | $10$ | $7$ | | $8$ | $11$ | $7$ | | $9$ | $12$ | $7$ | | $10$ | $13$ | $7$ | | $11$ | $14$ | $6$ | | $12$ | $15$ | $6$ | | $13$ | $16$ | $6$ | | $14$ | $17$ | $6$ | | $15$ | $18$ | $6$ |