P14499 [NCPC 2025] Egyptian Equality
题目背景
:::align{center}

吉萨的卡夫拉金字塔。在金字塔顶端可以看到许多残存的外包石。
图片作者 Daaaveee,来源:commons.wikimedia.org。
:::
题目描述
友好但彼此竞争的考古学家 Ameena 与 Bilal 正在寻找 **Nomarch’s Celestial Pyramid of Cauris**(州长的天界金字塔)的失落入口。经过数千年,外层的大部分已被剥离,因此入口必然位于北侧剩下的某一块“外包石”之后——这些光滑的石灰岩块曾覆盖整个金字塔。
为了避免彼此的传感器阵列相互干扰,Ameena 和 Bilal 将把金字塔的北面划分成两个相连的区域,各扫描一个。为了公平,每个区域必须包含相同数量的外包石。
他们将金字塔的北面建模为一个三角形的网格。该网格有 $N$ 行、$2N - 1$ 列,金字塔占据其中的一个子集:第一行是中间的一个格子,第二行是中间的三个格子,第三行是中间的五个格子,以此类推。网格中的某些非空格子是外包石。
你的任务是将金字塔划分成两个区域 $A$ 和 $B$,使其满足:
- 金字塔中的每一个格子恰好属于一个区域;
- 每个区域都是连通的(如果可以通过相邻格子一步步走到区域内任意两个格子之间,则称该区域连通;两个格子若共享一条边则相邻);
- 两个区域包含的外包石数量相同。
输入格式
第一行包含整数 $N$($2 \le N \le 300$)。
接下来的 $N$ 行中,每行包含 $2N - 1$ 个字符,用于描述哪些格子是外包石。
字符含义如下:
- `#` 表示不属于金字塔的格子;
- `.` 表示属于金字塔但不是外包石的格子;
- `C` 表示外包石。
金字塔中至少存在一块外包石。
输出格式
如果无法对金字塔进行满足要求的划分,则输出 `impossible`。
否则输出 $N$ 行,每行一个长度为 $2N - 1$ 的字符串,用于描述划分方式。其中:
- `#` 表示不属于金字塔的格子;
- `A` 表示属于 Ameena 的格子;
- `B` 表示属于 Bilal 的格子。
如果存在多个合法答案,你可以输出任意一个。
说明/提示
翻译由 ChatGPT-5 完成