[ABC326D] ABC Puzzle

题意翻译

### 问题陈述 给定一个整数 $N$ 和长度为 $N$ 的字符串 $R$ 和 $C$ ,分别由 `A` 、`B` 和 `C` 组成。 解决以下问题。 有一个 $N \times N$ 网格。所有单元格最初都是空的(即为 `.` )。 在每个单元格中,您最多只能写 `A` 、`B` 和 `C` 中的一个字符。(您也可以将单元格留空) 确定是否可以满足以下所有条件,如果可以,则以一种方式打印。 - 每行和每列恰好包含一个 `A` 、一个 `B` 和一个 `C` 。 - 第 $i$ 行中最左边的字符与 $R$ 的第 $i$ 个字符匹配。 - 第 $i$ 列中最上面的字符与 $C$ 的第 $i$ 个字符匹配。 #### 说明:( `.` 并不算做字符)

题目描述

[problemUrl]: https://atcoder.jp/contests/abc326/tasks/abc326_d 整数 $ N $ と `A`, `B`, `C` からなる長さ $ N $ の文字列 $ R,C $ が与えられるので、以下の問題を解いてください。 $ N\ \times\ N $ のマス目があり、最初全てのマスは空きマスです。 各マスに `A`, `B`, `C` のうち高々 $ 1 $ 文字を書き込みます。( 空きマスのままにすることも許されます ) 以下の条件を全て満たすことが可能であるか判定し、可能であれば書き込み方を $ 1 $ つ出力して下さい。 - 各行 / 各列 に `A`, `B`, `C` がちょうど $ 1 $ 個ずつ含まれる - $ i $ 行目に書かれた文字の中で最も左にある文字は $ R $ の $ i $ 文字目と一致する - $ i $ 列目に書かれた文字の中で最も上にある文字は $ C $ の $ i $ 文字目と一致する

输入输出格式

输入格式


入力は以下の形式で標準入力から与えられる。 > $ N $ $ R $ $ C $

输出格式


問題文中の条件を満たす書き込み方が存在しない場合、 `No` と $ 1 $ 行に出力してください。 そうでない場合、以下の形式に従い書き込み方を出力してください。 > Yes $ A_1 $ $ A_2 $ $ \vdots $ $ A_N $ まず、 $ 1 $ 行目に `Yes` と出力してください。 続く $ N $ 行のうちの $ i $ 行目に、長さ $ N $ の文字列である $ A_i $ を出力してください。 - $ A_i $ の $ j $ 文字目が `.` であるとき、上から $ i $ 行目、左から $ j $ 列目のマスは空きマスであることを示します。 - $ A_i $ の $ j $ 文字目が `A` であるとき、上から $ i $ 行目、左から $ j $ 列目のマスに `A` が書き込まれたことを示します。 - $ A_i $ の $ j $ 文字目が `B` であるとき、上から $ i $ 行目、左から $ j $ 列目のマスに `B` が書き込まれたことを示します。 - $ A_i $ の $ j $ 文字目が `C` であるとき、上から $ i $ 行目、左から $ j $ 列目のマスに `C` が書き込まれたことを示します。 正しい書き込み方が複数存在する場合、どれを出力しても構いません。

输入输出样例

输入样例 #1

5
ABCBC
ACAAB

输出样例 #1

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

输入样例 #2

3
AAA
BBB

输出样例 #2

No

说明

### 制約 - $ N $ は $ 3 $ 以上 $ 5 $ 以下の整数 - $ R,C $ は `A`, `B`, `C` からなる長さ $ N $ の文字列 ### Sample Explanation 1 出力例のマス目は以下の条件を全て満たすため、正解として扱われます。 - 全ての行に `A`, `B`, `C` がちょうど $ 1 $ 個ずつ含まれる - 全ての列に `A`, `B`, `C` がちょうど $ 1 $ 個ずつ含まれる - 各行に書かれた最も左の文字は上から順に `A`, `B`, `C`, `B`, `C` である - 各列に書かれた最も上の文字は左から順に `A`, `C`, `A`, `A`, `B` である ### Sample Explanation 2 この入力では、条件を満たす書き込み方は存在しません。