#ABC326D. ABC Puzzle(字母填格)

ABC Puzzle(字母填格)

题目描述

给定整数 NN 和两个长度为 NN、仅由 A、B、C 组成的字符串 R,CR,C。 在一个 N×NN\times N 棋盘中,每格可以填一个 A、B、C,也可以留空。请判断能否同时满足:

  • 每行、每列恰好各有一个 A、一个 B、一个 C。
  • 第 ii 行最左边的非空字母等于 RR 的第 ii 个字母。
  • 第 ii 列最上边的非空字母等于 CC 的第 ii 个字母。

如果可行,输出任意一种合法方案。

输入格式

第一行一个整数 NN;第二行为 RR;第三行为 CC。

输出格式

无解时输出 No。有解时先输出一行 Yes,再输出 NN 行、每行 NN 个字符,. 表示空格,其他字符为 A、B、C。答案不唯一,输出任意合法方案即可。

数据范围

3≤N≤53\le N\le5。R,CR,C 的长度均为 NN,且只包含 A、B、C。

样例 1

5

ABCBC

ACAAB
Yes

AC..B

.BA.C

C.BA.

BA.C.

..CBA

每行、每列各有 A、B、C;行首依次为 A、B、C、B、C,列首依次为 A、C、A、A、B。

样例 2

3

AAA

BBB
No

该输入无合法方案。