問題一覧 > 通常問題

No.3125 Make It Symmetry

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 129
作問者 : 👑 loop0919 / テスター : Iroha_3856 lif4635 ルク
1 ProblemId : 12091 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2025-04-24 23:21:37

問題文

$N \times N$ のグリッド $A$ があります。上から $i$ 番目、左から $j$ 番目のマスをマス $(i, j)$ といいます。
グリッド $A$ のマス $(i, j)$ は $A_{i, j}$ が # のとき黒色、. のとき白色で塗られています。

ここで、嬉しいグリッドであるとは、以下のように定義されます。

嬉しいグリッド:$N \times N$ のグリッド $X$ が以下の条件を満たすとき(かつそのときに限り)グリッド $X$ は嬉しいグリッドである。

  • 各 $i, j ~ (1 \leq i, j \leq N)$ について、グリッド $X$ のマス $(i, j)$ に塗られた色とマス $(i, N + 1 - j)$ に塗られた色は等しい。

また、茜ちゃんと葵ちゃんは、以下の操作を $0$ 回以上の好きな回数繰り返すことができます。

操作:以下の行動を順番に行う。

  • 茜ちゃんは、現在黒色に塗られているグリッド $A$ のマス $(i, j)$ を選ぶ。
  • 葵ちゃんは、現在白色に塗られているグリッド $A$ のマス $(i', j')$ を選ぶ。
  • グリッド $A$ のマス $(i, j)$ を白色に、マス $(i', j')$ を黒色に塗り替える。

操作を繰り返し行うことで、グリッド $A$ を嬉しいグリッドにできるか判定してください。

制約

  • $N$ は $1 \leq N \leq 500$ を満たす整数
  • $A_{i, j}$ は #, . のいずれかの文字

入力

入力は以下の形式で標準入力から与えられます。

$N$
$A_{1, 1}A_{1, 2}\ldots A_{1, N}$
$A_{2, 1}A_{2, 2}\ldots A_{2, N}$
$\vdots$
$A_{N, 1}A_{N, 2}\ldots A_{N, N}$

出力

操作を繰り返し行うことで、グリッド $A$ を嬉しいグリッドにできるならば Yes 、できないならば No と出力してください。

サンプル

サンプル1
入力
3
##.
#..
...
出力
Yes

例えば、以下のように操作することで嬉しいグリッドにすることができます。

  • 茜ちゃんがマス $(2, 1)$ を、葵ちゃんがマス $(1, 3)$ を選ぶ。グリッドは以下のようになり、これは嬉しいグリッドである。

    ###
    ...
    ...
    

サンプル2
入力
6
......
.###..
.###..
.###..
......
......
出力
No

どのように操作しても嬉しいグリッドにすることができません。

サンプル3
入力
4
#..#
.##.
.##.
#..#
出力
Yes

既に嬉しいグリッドです。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。