Como dividir uma lista por outra lista no Scala

Eu sou novo no Scala e preciso de uma solução para o meu problema. Imagine que eu tenho estas listas:

val list1 = List(1,2,3,4,5,6,7,8,9,10,11)
val list2 = List(6,5)

E meu desejo é dividir a primeira lista em uma Lista de listas usando a lista2 para mapeá-la. Portanto, o resultado seria algo como isto:

val result = List(List(1,2,3,4,5,6), List(7,8,9,10,11))

Se minha lista2 fosse assim:

val list2 = List(4,4,3)

O resultado seria então:

val result = List(List(1,2,3,4),List(5,6,7,8),List(9,10,11))

Qual é a melhor maneira de fazer isso?

questionAnswers(3)

yourAnswerToTheQuestion