diff options
| -rw-r--r-- | challenge-124/mark-anderson/raku/ch-2.raku | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/challenge-124/mark-anderson/raku/ch-2.raku b/challenge-124/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..6762d2c45e --- /dev/null +++ b/challenge-124/mark-anderson/raku/ch-2.raku @@ -0,0 +1,18 @@ +#!/usr/bin/env raku + +say tug-of-war(10, 20 ... 100); +say tug-of-war(10, -15, 20, 30, -25, 0, 5, 40, -5); + +sub tug-of-war(+$list) +{ + my $n = $list.elems div 2; + + my %h = $list.combinations($n).map(-> @a + { + my @b = ($list (-) @a).keys; + + abs(@b.sum - @a.sum) => @a ~ ' ' ~ @b; + }); + + .head($n), .tail(* - $n) with %h.min.value.split(/\s/).cache; +} |
