けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

AtCoder ABC 255 A - You should output ARC, though this is ABC. (7Q, 灰色, 100 点)

二次元配列の練習問題!

問題概要

整数  R, C と、2 行 2 列からなる行列  A が与えられるので、  A_{R, C} を出力せよ。

解法

2 行 2 列の行列は、次のような 2 次元の配列で実装できる。

int A[2][2];

そうすると、 R 行目  C 列目の要素は、A[R][C] と表せる。

コード

C++ では、配列の先頭の要素は 0 番目とみなす (0-indexed であるといいます) ため、 R, C はデクリメントしています。

#include <bits/stdc++.h>
using namespace std;

int main() {
    int R, C;
    int A[2][2];  // 2 行 2 列の行列
    
    // 入力受け取り
    cin >> R >> C;
    cin >> A[0][0] >> A[0][1] >> A[1][0] >> A[1][1];
    
    // 0-indexed にする
    --R, --C;
    
    // 出力する
    cout << A[R][C] << endl;
}