atcoder#AGC056A. [AGC056A] Three Cells per Row and Column

[AGC056A] Three Cells per Row and Column

配点 : 300300

問題文

NNNN 列からなる盤面があります.

以下の条件をすべて満たすように,すべてのマスを白か黒で塗ってください.

  • 各行について,その行のマスのうちちょうど 33 個が黒く塗られている.
  • 各列について,その列のマスのうちちょうど 33 個が黒く塗られている.
  • 黒いマスからなる連結成分の個数がちょうど NN 個である. ここで,ある 22 つの黒いマス x,yx,y が連結であるとは,xx からスタートし,上下左右の黒いマスに移動することを繰り返し,yy に到達できることを意味する.

なお,問題の制約より,必ず解が存在することが証明できます.

制約

  • 6N5006 \leq N \leq 500
  • 入力される値はすべて整数である

入力

入力は以下の形式で標準入力から与えられる.

NN

出力

答えを以下の形式で出力せよ.

s1,1s1,2s1,Ns_{1,1}s_{1,2}\cdots s_{1,N}

s2,1s2,2s2,Ns_{2,1}s_{2,2}\cdots s_{2,N}

\vdots

sN,1sN,2sN,Ns_{N,1}s_{N,2}\cdots s_{N,N}

ここで,si,js_{i,j} は,上から ii 行目,左から jj 列目のマスを塗る色を表す文字であり, si,j=s_{i,j}=# のときはそのマスを黒く,si,j=s_{i,j}=. のときはそのマスを白く塗ることを意味する. 答えが複数存在する場合,どれを出力しても正解とみなされる.

6
##..#.
##..#.
..##.#
..##.#
##...#
..###.

各行,各列にある # の個数はちょうど 33 です. また,# からなる連結成分の個数はちょうど 66 です.