Loading Now

shiftMatrix

Cho một matrix n * m và số nguyên dương k. Mỗi lần bạn dịch chuyển theo quy tắc như sau:

  1. matrix[i][j] sẽ trở thành matrix[i][j + 1]
  2. matrix[i][m - 1] sẽ trở thành matrix[i + 1][0]
  3. matrix[n - 1][m - 1] sẽ trở thành matrix[0][0]

Ta phải thực hiện lần lượt cả 3 bước nêu trên cho mỗi phép dịch chuyển.

Với ma trận matrix và số nguyên k hãy xác định ma trận mới sau k phép dịch chuyển như trên.

Ví dụ:

  • Với matrix = [[1, 2, 3],[4, 5, 6],[7, 8, 9]], k = 1 thì kết quả sẽ là shiftMatrix(matrix)="[[9, 1, 2],[3, 4, 5],[6, 7, 8]]".

     

Đầu vào/Đầu ra:

  • [Thời gian chạy] 0.1s (C++), 0.6s (Java và C#), 0.8s (Python, Go và Javascript).
  • [Đầu vào] Integer[i][j] matrix
    Mảng 2 chiều
    1 ≤ matrix.length ≤ 100
    1 ≤ matrix[0].length ≤ 100
  • [Đầu vào] Integer k
    0 ≤ k ≤ 100
  • [Đầu ra] Integer
    Matrix sau khi dịch chuyển k lần

Post Comment

Contact