Partição móvel

Crie uma função para particionar uma lista da esquerda para a direita.

Exemplos

moving_partition([-1, -1, -1, -1])
➞ [[[-1], [-1, -1, -1]], [[-1, -1], [-1, -1]], [[-1, -1, -1], [-1]]]

moving_partition([1, 2, 3, 4, 5])
➞ [[[1], [2, 3, 4, 5]], [[1, 2], [3, 4, 5]], [[1, 2, 3], [4, 5]], [[1, 2, 3, 4], [5]]]

moving_partition([]) ➞ []

Observações

  • Com uma entrada n, sua saída deve ser uma lista contendo n-1 sublistas. Cada sublista deve ter dois elementos: o lado esquerdo e o lado direito da partição (ambos devem ser não vazios, a menos que a lista de entrada esteja vazia).
  • Uma lista vazia deve retornar uma lista vazia: []