Time Limit: 2 sec / Memory Limit: 1024 MB
配点: 500 点
問題文
AtCoder 社長の chokudai さんは, CODE FESTIVAL 2018 本戦で参加者に配る直方体のケーキを用意した.
このケーキは, 地面と垂直方向に, 縦に N 分割, 横に N 分割され, 合計 N^2 個のピースに分けられている.
chokudai さんの飼い犬のリチャードは, CODE FESTIVAL 2018 予選に参加したが, ギリギリ通過できなかった.
そこでリチャードは, 本戦で配られるケーキのいくつかのピースにスプレーをかけることで, すべてのピースを食べられなくしようと思った.
あるピースにスプレーがかけられると, このピースとこれに隣り合っているピースすべてが食べられなくなる.
ただし、隣り合っているとは、面で接していることを指すものとする.
リチャードが目標を達成できるようなスプレーのかけ方を 1 つ求めなさい. また, スプレーをかけるのに長く時間を使うと chokudai さんに見つかってしまうので, スプレーをかけるピースの個数を 201 \ 800 個以内にしなければならない.
制約
- N は 1 以上 1 \ 000 以下の整数
入力
入力は以下の形式で標準入力から与えられる.
N
出力
1 行目から N 行目までに, それぞれ長さ N の文字列を出力しなさい. ただし, この N \times N の文字列はケーキを上から見た図 (各文字は 1 ピース) に対応しており, そのピースにスプレーをかける場合 X
, かけない場合 .
を出力する. X
の個数は 201 \ 800 個以下でなければならない.
この問題の制約下で, 目標を達成するスプレーのかけ方が必ず存在することが示せる. そのようなスプレーのかけ方が複数存在する場合, そのうちのどれを出力してもよい.
入力例 1
3
出力例 1
X.. ..X X..
入力例 2
6
出力例 2
X.X..X ..X.X. X..X.. .X...X X..X.. .X..X.
入力例 3
21
出力例 3
XXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXX X....X....X....X....X X.XXXX.XX.XX.X.X.XXXX X.XXXX.XX.XX.X.X....X X.XXXX.XX.XX.X.X.XXXX X....X....X....X....X XXXXXXXXXXXXXXXXXXXXX X....X....XX...X....X X.XXXX.XXXX.XXXXXX.XX X....X....XX..XXXX.XX X.XXXX.XXXXXXX.XXX.XX X.XXXX....X...XXXX.XX XXXXXXXXXXXXXXXXXXXXX XXX.XX.XX.X....X.XXXX XXX.XX.XX.X.XX.X.XXXX XXX.XX.XX.X....X.XXXX XXX.XXX..XX.XX.X.XXXX XXX.XXXX.XX.XX.X....X XXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXX