#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j;
int a, b;
int **mat;
// サイズの入力
// 行数分のポインタを動的確保
mat
= (int **)malloc(sizeof(int *) * a
); if (mat == NULL) {
return 0;
}
// 各行に列数分のint配列を確保
for (i = 0; i < a; i++) {
mat
[i
] = (int *)malloc(sizeof(int) * b
); if (mat[i] == NULL) {
return 0;
}
}
// 値の代入(例として、mat[i][j] = i + j とする)
for (i = 0; i < a; i++) {
for (j = 0; j < b; j++) {
mat[i][j] = i + j;
}
}
// 表示(変更不要と指定された部分)
for (i = 0; i < a; i++) {
for (j = 0; j < b; j++) {
}
}
// 動的確保したメモリを解放
for (i = 0; i < a; i++) {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKCkgewogICAgaW50IGksIGo7CiAgICBpbnQgYSwgYjsKICAgIGludCAqKm1hdDsKCiAgICAvLyDjgrXjgqTjgrrjga7lhaXlipsKICAgIHNjYW5mKCIlZCAlZCIsICZhLCAmYik7CgogICAgLy8g6KGM5pWw5YiG44Gu44Od44Kk44Oz44K/44KS5YuV55qE56K65L+dCiAgICBtYXQgPSAoaW50ICoqKW1hbGxvYyhzaXplb2YoaW50ICopICogYSk7CiAgICBpZiAobWF0ID09IE5VTEwpIHsKICAgICAgICBwcmludGYoIkVSUk9SXG4iKTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KCiAgICAvLyDlkITooYzjgavliJfmlbDliIbjga5pbnTphY3liJfjgpLnorrkv50KICAgIGZvciAoaSA9IDA7IGkgPCBhOyBpKyspIHsKICAgICAgICBtYXRbaV0gPSAoaW50ICopbWFsbG9jKHNpemVvZihpbnQpICogYik7CiAgICAgICAgaWYgKG1hdFtpXSA9PSBOVUxMKSB7CiAgICAgICAgICAgIHByaW50ZigiRVJST1JcbiIpOwogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9CiAgICB9CgogICAgLy8g5YCk44Gu5Luj5YWl77yI5L6L44Go44GX44Gm44CBbWF0W2ldW2pdID0gaSArIGog44Go44GZ44KL77yJCiAgICBmb3IgKGkgPSAwOyBpIDwgYTsgaSsrKSB7CiAgICAgICAgZm9yIChqID0gMDsgaiA8IGI7IGorKykgewogICAgICAgICAgICBtYXRbaV1bal0gPSBpICsgajsKICAgICAgICB9CiAgICB9CgogICAgLy8g6KGo56S677yI5aSJ5pu05LiN6KaB44Go5oyH5a6a44GV44KM44Gf6YOo5YiG77yJCiAgICBmb3IgKGkgPSAwOyBpIDwgYTsgaSsrKSB7CiAgICAgICAgZm9yIChqID0gMDsgaiA8IGI7IGorKykgewogICAgICAgICAgICBwcmludGYoIiVkICIsIG1hdFtpXVtqXSk7CiAgICAgICAgfQogICAgICAgIHByaW50ZigiXG4iKTsKICAgIH0KCiAgICAvLyDli5XnmoTnorrkv53jgZfjgZ/jg6Hjg6Ljg6rjgpLop6PmlL4KICAgIGZvciAoaSA9IDA7IGkgPCBhOyBpKyspIHsKICAgICAgICBmcmVlKG1hdFtpXSk7CiAgICB9CiAgICBmcmVlKG1hdCk7CgogICAgcmV0dXJuIDA7Cn0K