diff options
| -rw-r--r-- | challenge-251/mark-anderson/raku/ch-1.raku | 11 | ||||
| -rw-r--r-- | challenge-251/mark-anderson/raku/ch-2.raku | 55 |
2 files changed, 66 insertions, 0 deletions
diff --git a/challenge-251/mark-anderson/raku/ch-1.raku b/challenge-251/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..59d0543404 --- /dev/null +++ b/challenge-251/mark-anderson/raku/ch-1.raku @@ -0,0 +1,11 @@ +#!/usr/bin/env raku +use Test; + +is concat-val([6,12,25,1]), 1286; +is concat-val([10,7,31,5,2,2]), 489; +is concat-val([1,2,10]), 112; + +sub concat-val(@a) +{ + sum do while @a { @a.shift ~ (@a.pop || Empty) } +} diff --git a/challenge-251/mark-anderson/raku/ch-2.raku b/challenge-251/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..635e8aa611 --- /dev/null +++ b/challenge-251/mark-anderson/raku/ch-2.raku @@ -0,0 +1,55 @@ +#!/usr/bin/env raku +use Test; + +is-deeply (15,), lucky-numbers([ + [ 3, 7, 8 ], + [ 9, 11, 13 ], + [ 15, 16, 17 ] + ]); + +is-deeply (12,), lucky-numbers([ + [ 1, 10, 4, 2 ], + [ 9, 3, 8, 7 ], + [ 15, 16, 17, 12 ] + ]); + +is-deeply (7,), lucky-numbers([ + [ 7, 8 ], + [ 1, 2 ] + ]); + +is-deeply (16,), lucky-numbers([ + [ 22, 4, 20, 24 ], + [ 21, 16, 23, 18 ], + [ 3, 12, 19, 5 ], + [ 15, 7, 10, 2 ], + [ 17, 11, 6, 13 ], + [ 9, 8, 14, 1 ] + ]); + +is-deeply (), lucky-numbers([ + [ 26, 50, 10, 54, 42, 31, 45, 58 ], + [ 29, 64, 23, 35, 15, 41, 27, 17 ], + [ 55, 37, 1, 30, 52, 53, 21, 46 ], + [ 3, 2, 6, 36, 11, 13, 19, 22 ], + [ 61, 47, 32, 39, 49, 62, 9, 12 ], + [ 20, 60, 44, 7, 59, 34, 14, 16 ], + [ 8, 24, 38, 43, 56, 48, 57, 25 ], + [ 5, 40, 33, 28, 63, 18, 4, 51 ] + ]); + +is-deeply (43,), lucky-numbers([ + [ 34, 2, 9, 53, 32, 29, 36, 30 ], + [ 7, 19, 24, 10, 26, 27, 31, 25 ], + [ 52, 50, 39, 11, 22, 1, 54, 62 ], + [ 45, 56, 59, 20, 37, 17, 40, 42 ], + [ 14, 8, 63, 46, 5, 44, 61, 3 ], + [ 38, 15, 18, 16, 6, 12, 60, 4 ], + [ 41, 23, 13, 21, 35, 33, 28, 51 ], + [ 58, 48, 49, 55, 43, 47, 64, 57 ] + ]); + +sub lucky-numbers(@m) +{ + keys @m>>.min (&) ([Z] @m)>>.max +} |
