#define COL 4
#define ROW 4
int findMedian(int matrix[][COL], int row, int col) {
int* arr = new int[row];
memset(arr, 0, sizeof(int) * row);
for (int i = 0; i < row; ++i) {
int mid1 = matrix[i][col / 2];
int mid2 = col & 1 ? mid1 : matrix[i][col / 2 - 1];
arr[i] = (mid1 + mid2) >> 1;
}
int mid1 = arr[row / 2];
int mid2 = row & 1 ? mid1 : arr[row / 2 - 1];
return (mid1 + mid2) >> 1;
}