C - Domino Quality 解説 /

実行時間制限: 2 sec / メモリ制限: 1024 MB

配点 : 900

問題文

NN 列のマスからなる盤面を考えます。あなたはこの上にドミノ牌を何枚か置こうとしています。 各牌は一辺を共有する 2 マスの上に置き、各マスに乗せられる牌は 1 枚までです。

盤面の各行について、その行の 1 マス以上を占める牌の数をその行のクオリティと定義します。 各列のクオリティも同様に定義します。

1 枚以上の牌の盤面への置き方であって、どの行のクオリティもどの列のクオリティとも等しくなるものを求めてください。あるいは、そのような置き方が存在しないことを検出してください。

制約

  • 2 \le N \le 1000

入力

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

N

出力

題意を満たす牌の置き方が存在しない場合、整数 -1 のみを出力せよ。

そうでなければ、題意を満たす牌の置き方をそれぞれ長さ N の文字列 N 個として出力せよ。 牌が乗せられていないマスに対応する文字は . (ドット) とし、牌が乗せられているマスに対応する文字は英小文字とすること。 同一の牌が占めるマスには同一の文字を用い、一辺を共有する 2 マスが異なる牌に占められている場合、それらのマスには異なる文字を用いよ。


入力例 1

6

出力例 1

aabb..
b..zz.
ba....
.a..aa
..a..b
..a..b

どの行のクオリティも、どの列のクオリティも 2 です。


入力例 2

2

出力例 2

-1

Score : 900 points

Problem Statement

Let us consider a grid of squares with N rows and N columns. You want to put some domino pieces on this grid. Each domino piece covers two squares that have a common side. Each square can be covered by at most one piece.

For each row of the grid, let's define its quality as the number of domino pieces that cover at least one square in this row. We define the quality of each column similarly.

Find a way to put at least one domino piece on the grid so that the quality of every row is equal to the quality of every column, or determine that such a placement doesn't exist.

Constraints

  • 2 \le N \le 1000

Input

Input is given from Standard Input in the following format:

N

Output

If the required domino placement doesn't exist, print a single integer -1.

Otherwise, output your placement as N strings of N characters each. If a square is not covered, the corresponding character must be . (a dot). Otherwise, it must contain a lowercase English letter. Squares covered by the same domino piece must contain the same letter. If two squares have a common side but belong to different pieces, they must contain different letters.


Sample Input 1

6

Sample Output 1

aabb..
b..zz.
ba....
.a..aa
..a..b
..a..b

The quality of every row and every column is 2.


Sample Input 2

2

Sample Output 2

-1