diff options
| -rw-r--r-- | challenge-134/mark-anderson/raku/ch-1.raku | 11 | ||||
| -rw-r--r-- | challenge-134/mark-anderson/raku/ch-2.raku | 15 |
2 files changed, 26 insertions, 0 deletions
diff --git a/challenge-134/mark-anderson/raku/ch-1.raku b/challenge-134/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..82bea0e855 --- /dev/null +++ b/challenge-134/mark-anderson/raku/ch-1.raku @@ -0,0 +1,11 @@ +#!/usr/bin/env raku + +say pandigital(100); +say pandigital(999); +say pandigital(^5); +say pandigital(400, 300, 200, 100, 0); + +sub pandigital(+$arr where .all ~~ UInt) +{ + (1023456789.comb.permutations)[|$arr]>>.join.join(', '); +} diff --git a/challenge-134/mark-anderson/raku/ch-2.raku b/challenge-134/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..aaaf0b1182 --- /dev/null +++ b/challenge-134/mark-anderson/raku/ch-2.raku @@ -0,0 +1,15 @@ +#!/usr/bin/env raku + +unit sub MAIN(UInt $r, UInt $c); + +my @table; + +@table[.head;.tail] = .head.succ * .tail.succ for ^$r X ^$c; + +my @uniq = @table>>.Slip.flat.unique.sort; + +my $fmt = ($r * $c).chars; + +say .fmt("%{$fmt}d").substr($fmt - $r.chars) for @table; + +say "\nDistinct Terms: ", @uniq.join(", "), "\nCount: ", +@uniq; |
