Mark
07/15/2020, 9:19 AMMichael de Kaste
07/15/2020, 3:20 PMMichael de Kaste
07/15/2020, 3:41 PMval list = listOf("a", "bc", "d", "e", "f", "gh")
val result = list.fold(mutableListOf<StringBuilder>() to false){ (list, buildingOnes), s ->
list.apply {
when{
s.length == 1 && buildingOnes -> last().append(s)
else -> add(StringBuilder(s))
}
} to (s.length == 1)
}.first.map(StringBuilder::toString)
result.forEach(::println)