Like this for first task for day 1: ``` listOf(0 t...
# random
o
Like this for first task for day 1:
Copy code
listOf(0 to -1, 1 to 0, 0 to 1, -1 to 0).let { m -> input.split(", ").map { it.first() to it.drop(1).toInt() }.fold(Triple(0, 0, 0)) { (x, y, d), (r, l) -> (if (r == 'R') (d + 1) % 4 else (d + 3) % 4).let { Triple(x + m[it].first * l, y + m[it].second * l, it) } }.let { println(Math.abs(it.first) + Math.abs(it.second)) } }
Can it be even shorter (in tokens, not in chars)? 🧌
👍 1