問題文に不備があったため、一部変更しました。誠に申し訳ございません。(15:55)

問題文

N×NN × NN2N^2 マスからなるキャンバスがあります。
キャンバスの上から HH 行目 (1HN)(1 \leq H \leq N) 、左から WW 列目 (1WN)(1 \leq W \leq N) のマスをマス(W,H)\textcolor{#ff0000}{\text{マス(W,H)}} と呼ぶことにします。

いくつかの点 i(1,2,)i \: (1, 2, \ldots) を描くマス (xi,yi)(x_i ,\: y_i) が与えられます。

点の個数は入力として与えられないことに注意してください。

以下の手順でキャンバスに絵を描いてください。

  1. キャンバスのマス (xi,yi)(x_i, y_i) に点 ii を描く。ただし、(xi,yi)=(0,0)(x_i, y_i) = (0, 0) の時に絵を描くことをやめる。
  2. i2i \geq 2 のときに、以下の手順を行う。
    • i1i − 1 が、ペイントした点 ii と同じ列または行だった場合、点 ii と点 i1i − 1 を結ぶ線を描く。
      • ここで線を描くとは、点 ii と点 i1i − 1 の間にあるマス全てに点を描くことをいいます。
      • このとき点 ii と点 i1i − 1 の間にすでに点が描かれていた場合、上から点を塗り重ね、点が描かれたマスとして扱います。

ここで、点 ii と点 jj を結ぶ線を描くことを、次のように定義します。

  • xi=xjx_i = x_j の時、min(yi,yj)kmax(yi,yj)\min (y_i, y_j) \leq k \leq \max(y_i, y_j) を満たす全ての整数 kk に対して、マス (xi,k)(x_i, k) に点を描く。
  • yi=yjy_i = y_j の時、min(xi,xj)kmax(xi,xj)\min (x_i, x_j) \leq k \leq \max(x_i, x_j) を満たす全ての整数 kk に対して、マス (k,yi)(k, y_i) に点を描く。

絵の描かれたキャンバスを出力の形式に従って出力してください。

制約

  • 1N1001 \leq N \leq 100
  • 1xi,yiN1 \leq x_i, y_i \leq N (ただし、最後は必ず (0,0)\boldsymbol{(0, 0)} が与えられる)
  • (xi,yi)(xj,yj)(ij)(x_i, y_i) \neq (x_j, y_j) \: (i \neq j)
  • 入力はすべて整数

入力

NN
x1 y1x_1 ~ y_1
x2 y2x_2 ~ y_2
\vdots
0 00 ~ 0

出力

NN 行出力せよ。

点が描かれたマスには # を、それ以外のマスには . を出力せよ。
i(1iN)i \:(1 \leq i \leq N) 行目の j(1jN)j \:(1 \leq j \leq N) 文字目には、マス (i,j)(i, j) に描かれたマスの情報を出力してください。

入力例 11

4
1 1
1 4
4 4
4 1
2 1
0 0

出力例 11

####
#..#
#..#
####
  • (1,1)(1, \: 1) に点 11 を描きます。
  • (1,4)(1, \: 4) に点 22 を描きます。点 11 と点 22 が共に 11 列目にあるので、点 11 と点 22 を結ぶ線を描きます。
  • (4,4)(4, \: 4) に点 33 を描きます。点 22 と点 33 が共に 44 行目にあるので、点 22 と点 33 を結ぶ線を描きます。
  • (4,1)(4, \: 1) に点 44 を描きます。点 33 と点 44 が共に 44 列目にあるので、点 33 と点 44 を結ぶ線を描きます。
  • (2,1)(2, \: 1) に点 55 を描きます。点 44 と点 55 が共に 11 行目にあるので、点 44 と点 55 を結ぶ線を描きます。
  • (0,0)(0, \: 0) が与えられたので絵を描くことをやめます。

キャンバスの各マスは以下のように変化します。

#...     #...     #...     #..#     ####
....     #...     #...     #..#     #..#
....  →  #...  →  #...  →  #..#  →  #..#
....     #...     ####     ####     ####

入力例 22

5
3 3
2 3
2 4
4 4
4 2
1 2
1 5
5 5
5 1
1 1
0 0

出力例 22

#####
#####
#####
#####
#####

入力例 33

12
4 1
6 1
3 2
3 6
1 3
2 3
2 4
5 3
7 2
8 3
12 3
8 5
10 5
11 4
11 7
12 4
4 7
5 8
10 8
5 9
5 12
4 12
8 9
8 12
7 12
0 0

出力例 33

...###......
..#...#.....
###.#..#####
.##.......##
..#....####.
..#.......#.
...#......#.
....######..
....#..#....
....#..#....
....#..#....
...##.##....

Submit


Go (1.21)