#include <stdio.h>
void array_mul(int (*x)[2], int (*y)[2], int (*ans)[2]) {
for(int i=0; i<2; i++){
for(int j=0; j<2; j++){
ans[i][j]=0;
for(int k=0; k<2; k++){
ans[i][j]+=x[i][k]*y[k][j];
}
}
}
}
int main(void) {
int x[2][2]={1,2,3,4};
int y[2][2]={1,2,3,4};
int ans[2][2];
array_mul(x, y, ans);
printf("%d %d\n", ans
[0][0], ans
[0][1]); printf("%d %d\n", ans
[1][0], ans
[1][1]);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGFycmF5X211bChpbnQgKCp4KVsyXSwgaW50ICgqeSlbMl0sIGludCAoKmFucylbMl0pIHsKCiAgICBmb3IoaW50IGk9MDsgaTwyOyBpKyspewogICAgICAgIGZvcihpbnQgaj0wOyBqPDI7IGorKyl7CiAgICAgICAgICAgIGFuc1tpXVtqXT0wOwogICAgICAgICAgICBmb3IoaW50IGs9MDsgazwyOyBrKyspewogICAgICAgICAgICAgICAgYW5zW2ldW2pdKz14W2ldW2tdKnlba11bal07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIGludCB4WzJdWzJdPXsxLDIsMyw0fTsKICAgIGludCB5WzJdWzJdPXsxLDIsMyw0fTsKICAgIGludCBhbnNbMl1bMl07CgogICAgYXJyYXlfbXVsKHgsIHksIGFucyk7CgogICAgcHJpbnRmKCIlZCAlZFxuIiwgYW5zWzBdWzBdLCBhbnNbMF1bMV0pOwogICAgcHJpbnRmKCIlZCAlZFxuIiwgYW5zWzFdWzBdLCBhbnNbMV1bMV0pOwoKICAgIHJldHVybiAwOwp9Cg==