#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j;
int a, b;
int count = 1;
int **mat;
// 2次元配列の動的確保
mat
= (int **)malloc(a
* sizeof(int *)); for (i = 0; i < a; i++) {
mat
[i
] = (int *)malloc(b
* sizeof(int)); }
// 2次元配列に数値を代入
for (i = 0; i < a; i++) {
for (j = 0; j < b; j++) {
mat[i][j] = count++;
}
}
// 表示
for (i = 0; i < a; i++) {
for (j = 0; j < b; j++) {
}
}
// 2次元配列の解放
for (i = 0; i < a; i++) {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKCkgewogICAgaW50IGksIGo7CiAgICBpbnQgYSwgYjsKICAgIGludCBjb3VudCA9IDE7CiAgICBpbnQgKiptYXQ7CgogICAgc2NhbmYoIiVkICVkIiwgJmEsICZiKTsKCiAgICAvLyAy5qyh5YWD6YWN5YiX44Gu5YuV55qE56K65L+dCiAgICBtYXQgPSAoaW50ICoqKW1hbGxvYyhhICogc2l6ZW9mKGludCAqKSk7CiAgICBmb3IgKGkgPSAwOyBpIDwgYTsgaSsrKSB7CiAgICAgICAgbWF0W2ldID0gKGludCAqKW1hbGxvYyhiICogc2l6ZW9mKGludCkpOwogICAgfQoKICAgIC8vIDLmrKHlhYPphY3liJfjgavmlbDlgKTjgpLku6PlhaUKICAgIGZvciAoaSA9IDA7IGkgPCBhOyBpKyspIHsKICAgICAgICBmb3IgKGogPSAwOyBqIDwgYjsgaisrKSB7CiAgICAgICAgICAgIG1hdFtpXVtqXSA9IGNvdW50Kys7CiAgICAgICAgfQogICAgfQoKICAgIC8vIOihqOekugogICAgZm9yIChpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZvciAoaiA9IDA7IGogPCBiOyBqKyspIHsKICAgICAgICAgICAgcHJpbnRmKCIlZCAiLCBtYXRbaV1bal0pOwogICAgICAgIH0KICAgICAgICBwcmludGYoIlxuIik7CiAgICB9CgogICAgLy8gMuasoeWFg+mFjeWIl+OBruino+aUvgogICAgZm9yIChpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZyZWUobWF0W2ldKTsKICAgIH0KICAgIGZyZWUobWF0KTsKCiAgICByZXR1cm4gMDsKfQ==