diff options
| author | Mark <53903062+andemark@users.noreply.github.com> | 2021-10-11 07:56:55 +0000 |
|---|---|---|
| committer | Mark <53903062+andemark@users.noreply.github.com> | 2021-10-11 07:56:55 +0000 |
| commit | 076d17ee0a1fdd8ccfdd44615b366629877bf7b4 (patch) | |
| tree | 136e95e5dc59ea6a76172131f718f6ac29b026d9 | |
| parent | 7f103dc8430b8194e2d5d96c5d675a9d9fff20f2 (diff) | |
| download | perlweeklychallenge-club-076d17ee0a1fdd8ccfdd44615b366629877bf7b4.tar.gz perlweeklychallenge-club-076d17ee0a1fdd8ccfdd44615b366629877bf7b4.tar.bz2 perlweeklychallenge-club-076d17ee0a1fdd8ccfdd44615b366629877bf7b4.zip | |
Challenge 134 Solutions (Raku)
| -rw-r--r-- | challenge-134/mark-anderson/raku/ch-1.raku | 16 | ||||
| -rw-r--r-- | challenge-134/mark-anderson/raku/ch-2.raku | 15 |
2 files changed, 31 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..ff78af9b7d --- /dev/null +++ b/challenge-134/mark-anderson/raku/ch-1.raku @@ -0,0 +1,16 @@ +#!/usr/bin/env raku + +say pandigital(100); +say pandigital(999); +say pandigital(^5); +say pandigital(400, 300, 200, 100, 0); + +multi pandigital(UInt $i) +{ + (1023456789.comb.permutations)[$i].join; +} + +multi pandigital(+$arr where .all ~~ UInt) +{ + (1023456789.comb.permutations)[|$arr]>>.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; |
