#include <stdio.h>
#include <stdlib.h>
//必要があれば変数などを追加してもOKです
int main(){
int i,j,k;
int a,b;
int **mat;
mat
=(int**)malloc(sizeof(int*)*a
);for(i=0;i<a;i++){
mat
[i
]=(int*)malloc(b
*sizeof(int));}
int value = 1;
for(i = 0; i < a; i++) {
for(j = 0; j < b; j++) {
mat[i][j] = value++;
}
}
//以下の部分は表示の部分です
//いじらなくてOK
for(i=0;i<a;i++){
for(j=0;j<b;j++){
}
}
for(i = 0; i < a; i++) {
free(mat
[i
]); // 各行の配列を解放 }
free(mat
); // 行ポインタ配列自体を解放
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCi8v5b+F6KaB44GM44GC44KM44Gw5aSJ5pWw44Gq44Gp44KS6L+95Yqg44GX44Gm44KCT0vjgafjgZkKCmludCBtYWluKCl7CiAgICBpbnQgaSxqLGs7CiAgICBpbnQgYSxiOwogICAgaW50ICoqbWF0OwogICAgc2NhbmYoIiVkICVkIiwmYSwmYik7Cm1hdD0oaW50KiopbWFsbG9jKHNpemVvZihpbnQqKSphKTsKZm9yKGk9MDtpPGE7aSsrKXsKCW1hdFtpXT0oaW50KiltYWxsb2MoYipzaXplb2YoaW50KSk7Cn0KICAgIAoJaW50IHZhbHVlID0gMTsKICAgIGZvcihpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZvcihqID0gMDsgaiA8IGI7IGorKykgewogICAgICAgICAgICBtYXRbaV1bal0gPSB2YWx1ZSsrOyAgCiAgICAgICAgfQogICAgfQoJCiAgICAKICAgIC8v5Lul5LiL44Gu6YOo5YiG44Gv6KGo56S644Gu6YOo5YiG44Gn44GZCiAgICAvL+OBhOOBmOOCieOBquOBj+OBpk9LCiAgICBmb3IoaT0wO2k8YTtpKyspewogICAgICAgIGZvcihqPTA7ajxiO2orKyl7CiAgICAgICAgICAgIHByaW50ZigiJWQgIixtYXRbaV1bal0pOwogICAgICAgIH0KICAgICAgICBwcmludGYoIlxuIik7CiAgICB9CiAgICAKICAgIGZvcihpID0gMDsgaSA8IGE7IGkrKykgewogICAgICAgIGZyZWUobWF0W2ldKTsgIC8vIOWQhOihjOOBrumFjeWIl+OCkuino+aUvgogICAgfQogICAgZnJlZShtYXQpOyAgICAgICAgIC8vIOihjOODneOCpOODs+OCv+mFjeWIl+iHquS9k+OCkuino+aUvgoKCiAgICByZXR1cm4gMDsKfQo=