Kinda like this version:
```
val leftReversed = (ints foldLeft accumulator) { (acc, elem) => elem :: acc }
val rightReversed = (ints foldRight accumulator) { (elem, acc) => acc :+ elem }
println(leftReversed)
println(rightReversed)

// ...and back
println((leftReversed /: accumulator) { (acc, elem) => elem :: acc })
println((rightReversed :\ accumulator) { (elem, acc) => acc :+ elem })
```
Adds just enough indirection/misdirection to make it non-obvious, although that also makes the puzzler "less than minimally simple".