This post is part of a series on Mohammad Anwar’s excellent Weekly Challenge, where hackers submit solutions in Perl, Raku, or any other language, to two different challenges every week. (It’s a lot of fun, if you’re into that sort of thing.)
Task 1 › Large Numbers
The first task this week has us taking a list of numbers and finding the permutation whose concatenation gives the largest number. For example: largest(20,3) = 320
.
At first, I thought I might get away with a greedy join('', reverse sort @ints)
but the greedy approach doesn’t work in this case. For example, join('', reverse sort(5, 50, 51))
would give 51505, but the correct answer is 55150. So, a more deliberate approach is needed. However, see the update below this section!