#include <stdio.h>
#include <stdlib.h>
int main(){
int i, j, k = 1;
int a, b;
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] = k++;
}
}
// 出力部分(変更不要)
for(i = 0; i < a; i++){
for(j = 0; j < b; j++){
}
}
// 最後に忘れずにすること:動的に確保したメモリの解放
for(i = 0; i < a; i++) {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKCl7CiAgICBpbnQgaSwgaiwgayA9IDE7CiAgICBpbnQgYSwgYjsKICAgIGludCAqKm1hdDsKICAgIHNjYW5mKCIlZCAlZCIsICZhLCAmYik7CgogICAgLy8gMuasoeWFg+mFjeWIl+OBruWLleeahOeiuuS/nQogICAgbWF0ID0gKGludCAqKiltYWxsb2MoYSAqIHNpemVvZihpbnQgKikpOwogICAgZm9yKGkgPSAwOyBpIDwgYTsgaSsrKSB7CiAgICAgICAgbWF0W2ldID0gKGludCAqKW1hbGxvYyhiICogc2l6ZW9mKGludCkpOwogICAgfQoKICAgIC8vIDLmrKHlhYPphY3liJfjgavmlbDlgKTjgpLku6PlhaUKICAgIGZvcihpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZvcihqID0gMDsgaiA8IGI7IGorKykgewogICAgICAgICAgICBtYXRbaV1bal0gPSBrKys7CiAgICAgICAgfQogICAgfQoKICAgIC8vIOWHuuWKm+mDqOWIhu+8iOWkieabtOS4jeimge+8iQogICAgZm9yKGkgPSAwOyBpIDwgYTsgaSsrKXsKICAgICAgICBmb3IoaiA9IDA7IGogPCBiOyBqKyspewogICAgICAgICAgICBwcmludGYoIiVkICIsIG1hdFtpXVtqXSk7CiAgICAgICAgfQogICAgICAgIHByaW50ZigiXG4iKTsKICAgIH0KCiAgICAvLyDmnIDlvozjgavlv5jjgozjgZrjgavjgZnjgovjgZPjgajvvJrli5XnmoTjgavnorrkv53jgZfjgZ/jg6Hjg6Ljg6rjga7op6PmlL4KICAgIGZvcihpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZyZWUobWF0W2ldKTsKICAgIH0KICAgIGZyZWUobWF0KTsKCiAgICByZXR1cm4gMDsKfQo=