B - ASCII Art Editorial by MMNMM

文字コードを直接使わない方法

ASCII コードを知らない/使えない場合にこの問題を解く方法について説明します(厳密には、C++ でも char に文字を入れる際に値が ASCII コードに対応しているとは限りません)。

数字から文字への対応を自分で書いてしまうことで、文字コードを直接使うことなくこの問題を解くことができます。 Python には string.ascii_uppercase という大文字を順に並べた文字列もあります。

#include <iostream>
#include <string>
using namespace std;

string convert = ".ABCDEFGHIJKLMNOPQRSTUVWXYZ";

int main() {
  int H, W;
  cin >> H >> W;
  for (int i = 0; i < H; i++) {
    for (int j = 0; j < W; j++) {
      int x;
      cin >> x;
      cout << convert[x];
    }
    cout << endl;
  }
}
import string

convert = '.' + string.ascii_uppercase

H, W = map(int, input().split())

for i in range(H):
  print(''.join(convert[int(a)] for a in input().split()))

posted:
last update: