Cómo dividir una lista por otra lista en Scala

Soy nuevo en Scala y necesito una solución a mi problema. Imagina que tengo estas listas:

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

Y mi deseo es dividir la primera lista en una Lista de listas usando list2 para mapearla. Entonces el resultado sería algo como esto:

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

Si mi lista2 fuera así:

val list2 = List(4,4,3)

El resultado sería entonces:

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

¿Cuál es la mejor manera de hacer esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta