問題
https://onlinejudge.u-aizu.ac.jp/courses/lesson/2/ITP1/6/ITP1_6_C (新しいタブで開く)
問題文
1 フロア 10 部屋、3 階建ての 4 棟の公舎がある。
入居・退去の情報をもとに、各部屋の入居者数を管理してね。
件の情報が与えられる。
各クエリ は 棟 階 部屋に 人が入居したことを表す。
なら 人が退去したことを表す。
制約
- 途中の入居者数は 0 以上 9 以下
サンプル
I/O 1
3 1 1 3 8 3 2 2 7 4 3 8 1
0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #################### 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #################### 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #################### 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
考察
3 次元配列を使えばそのまま。
コード
int main() { int a[4][3][10]; rep(i, 4) rep(j, 3) rep(k, 10) a[i][j][k] = 0; int n; cin >> n; rep(_, n) { int b, f, r, v; cin >> b >> f >> r >> v; --b, --f, --r; a[b][f][r] += v; } rep(i, 4) { rep(j, 3) { rep(k, 10) { cout << " " << a[i][j][k]; } cout << endl; } if (i < 3) cout << "####################" << endl; } return 0; }