Kazun の競プロ記録

競技プログラミングに関する様々な話題を執筆します.

AtCoder Beginner Contest 294 B問題 ASCII Art

問題

atcoder.jp

提出解答

atcoder.jp

問題の概要

 H W 列の各要素が  0 以上  26 以下の整数からなる行列  A=(A_{i,j})_{i,j} がある.

 i=1,2, \dots, H に対して, 以下のようにして決定される文字列  S_1, \dots, S_H を求めよ.

  •  A_{i,j}=0 ならば,  S_i j 文字目は  {\tt .} である.
  •  A_{i,j} \gt 0 ならば,  S_i j 文字目は  A_{i,j} 番目の英大文字である.

制約

  •  1 \leq H,W \leq 100
  •  0 \leq A_{i,j} \leq 26

解法

 i に対して,  j=1,2, \dots, W の順に  S_i j 文字目を特定してしていけばよい.

ここで,  S_i j 文字目は  0 indexed である言語であるならば,  {\tt .ABCDEFGHIJKLMNOPQRSTUVWXYZ} の (0 indexed の意味で)  A_{i,j} 番目とするのが楽である.