Complete o quadrado (matriz)

Infelizmente, o mundo matemático é tendencioso a favor das matrizes quadradas. Portanto, este desafio ajudará as matrizes retangulares, tornando-as quadradas.

Por exemplo, para a matriz:

[
  [1, 2],
  [3, 4],
  [5, 6]
]

Isso pode ser feito preenchendo-a com uma coluna de zeros à direita para obter:

[
  [1, 2, 0],
  [3, 4, 0],
  [5, 6, 0]
]

Já para a matriz:

[
  [1, 2, 3, 4],
  [5, 6, 7, 8]
]

Pode-se preenchê-la com duas linhas de zeros na parte inferior para obter:

[
  [1, 2, 3, 4],
  [5, 6, 7, 8],
  [0, 0, 0, 0],
  [0, 0, 0, 0]
]

Escreva uma função que preencha uma matriz retangular com zeros à direita ou na parte inferior para torná-la quadrada.

Exemplos

complete_square([
  [2, 5]
]) ➞ [
  [2, 5],
  [0, 0]
]

complete_square([
  [2, 5],
  [1, 7]
]) ➞ [
  [2, 5],
  [1, 7]
]

complete_square([
  [1, 2],
  [3, 4],
  [5, 6]
 ]) ➞ [
  [1, 2, 0],
  [3, 4, 0],
  [5, 6, 0]
]

Notas

  • As matrizes devem ser preenchidas à direita ou na parte inferior, mas não em ambas simultaneamente (ou seja, o tamanho da maior dimensão não deve mudar).
  • Se a matriz de entrada já for quadrada, basta retorná-la.