Transposição em espiral

Achate uma lista bidimensional seguindo uma ordem espiral no sentido horário. Comece pelo valor no canto superior esquerdo e avance primeiro para a direita.

Exemplos

spiral_transposition([
  [7, 2],
  [5, 0]
])

➞ [7, 2, 0, 5]

spiral_transposition([
  [1, 2, 3],  
  [4, 5, 6],
  [7, 8, 9]
])

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

spiral_transposition([
  [1, 1, 1],  
  [4, 5, 2],
  [3, 3, 2] 
])

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

Observações

Se você não entende as instruções, escreva o exemplo da lista 3x3 em uma folha de papel e acompanhe o resultado passo a passo.