Reshape the Matrix

In MATLAB, there is a function called reshape which can reshape an m x n matrix into a new one with a different size r x c keeping its original data. You are given an m x n matrix and two integers r and c representing the number of rows and columns of the wanted reshaped matrix. The reshaped matrix should be filled with all the elements of the original matrix in the same row-traversing order as they were. If the reshape operation with the given parameters is possible and legal, output the new reshaped matrix; otherwise, output the original matrix.

Constraints

  • m == mat.length
  • n == mat[i].length
  • 1 <= m, n <= 100
  • -1000 <= mat[i][j] <= 1000
  • 1 <= r, c <= 300
Saving… · 2 lines
class Solution:
def reshapeMatrix(self, mat: List[List[int]], r: int, c: int) -> List[List[int]]:
Console

Click Run to execute sample tests.