C++はint int[n][m]でn*m分確保できないよ

int (*spread)[COLS] = (int (*)[COLS])new int [ROWS * COLS];