#aBC326D. [ABC326D] ABC Puzzle

[ABC326D] ABC Puzzle

AT_abc326_d [ABC326D] ABC Puzzle

题目描述

给定整数 NN 以及由 ABC 组成的长度为 NN 的字符串 RRCC,请解决以下问题。

有一个 N×NN \times N 的网格,最初所有格子都是空的。
你可以在每个格子中写入 ABC 中至多一个字符(也可以保持为空)。

请判断是否存在一种写法,使得以下所有条件都被满足。如果存在,请输出一种写法。

  • 每一行和每一列都恰好包含一个 A、一个 B 和一个 C
  • ii 行中最左边被写入的字符必须等于 RR 的第 ii 个字符。
  • ii 列中最上面被写入的字符必须等于 CC 的第 ii 个字符。

输入格式

输入通过标准输入给出,格式如下:

NN RR CC

输出格式

如果不存在满足条件的写法,请输出一行 No
否则,请按以下格式输出一种写法:

Yes
A1A_1
A2A_2
\vdots
ANA_N

首先输出一行 Yes。接下来的 NN 行中,第 ii 行输出一个长度为 NN 的字符串 AiA_i

  • AiA_i 的第 jj 个字符为 . 时,表示第 ii 行第 jj 列的格子为空。
  • AiA_i 的第 jj 个字符为 A 时,表示第 ii 行第 jj 列的格子写入了 A
  • AiA_i 的第 jj 个字符为 B 时,表示第 ii 行第 jj 列的格子写入了 B
  • AiA_i 的第 jj 个字符为 C 时,表示第 ii 行第 jj 列的格子写入了 C

如果存在多种满足条件的写法,输出任意一种均可。

输入输出样例 #1

输入 #1

5
ABCBC
ACAAB

输出 #1

Yes
AC..B
.BA.C
C.BA.
BA.C.
..CBA

输入输出样例 #2

输入 #2

3
AAA
BBB

输出 #2

No

说明/提示

限制

  • NN3355 之间的整数。
  • R,CR, C 均为由 ABC 组成的长度为 NN 的字符串。

样例解释 1

样例输出的网格满足以下所有条件,因此是正确答案:

  • 每一行恰好包含一个 A、一个 B 和一个 C
  • 每一列恰好包含一个 A、一个 B 和一个 C
  • 每一行最左边被写入的字符依次为 ABCBC
  • 每一列最上面被写入的字符依次为 ACAAB

样例解释 2

对于该输入,不存在满足条件的写法。

由 ChatGPT 4.1 翻译