# [GolfScript], 24 bytes A horribly long answer... golfed out 1 byte by using a hard-to-read output format ~[1]*{..2/{{+}*}%\,(}do; [Try it online!][TIO-k57xqscq] [GolfScript]: http://www.golfscript.com/golfscript/ [TIO-k57xqscq]: https://tio.run/##HcyxCsIwFIXhPU9xoAhSS4o6ugsuOjpohxBjE6xJSG8tEuKrx@hZ/4/Tu@E@ymA85fy5rLs6cr5pY1ylOi2uzTLd3C5XOLoGB4gnrCNQeBvbgxykVoKgVVCcc9ahwjkID9IKIwn5gLFFCQxmJBYZyjyKOk3kJ8JsSJdq1TwYq1hqf23vghJSw71U@D8ZW2zefgE "GolfScript – Try It Online" ## Explanation ``` ~ // Dump the contents of the input string [1]* // Create a 1-list with the length of the input string { }do // do ... while \,( // the length of the array is larger than 1 . // Extra evolution step that we need to keep . // Create a copy of the input 2/ // That splits into parts of 2 items { }% // For each over the splitted array: {+}* // Reduce the item with addition // e.g. [1] -> [1], [1 2] -> [3], etc. ; // Discard the abundant copy ```