From 076d17ee0a1fdd8ccfdd44615b366629877bf7b4 Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 11 Oct 2021 07:56:55 +0000 Subject: Challenge 134 Solutions (Raku) --- challenge-134/mark-anderson/raku/ch-1.raku | 16 ++++++++++++++++ challenge-134/mark-anderson/raku/ch-2.raku | 15 +++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 challenge-134/mark-anderson/raku/ch-1.raku create mode 100644 challenge-134/mark-anderson/raku/ch-2.raku 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; -- cgit From d72abf262cab062d29e5cd5a60d2b76c8969fe52 Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 11 Oct 2021 08:19:06 +0000 Subject: Challenge 134 Solutions (Raku) --- challenge-134/mark-anderson/raku/ch-1.raku | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/challenge-134/mark-anderson/raku/ch-1.raku b/challenge-134/mark-anderson/raku/ch-1.raku index ff78af9b7d..82bea0e855 100644 --- a/challenge-134/mark-anderson/raku/ch-1.raku +++ b/challenge-134/mark-anderson/raku/ch-1.raku @@ -5,12 +5,7 @@ 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) +sub pandigital(+$arr where .all ~~ UInt) { - (1023456789.comb.permutations)[|$arr]>>.join; + (1023456789.comb.permutations)[|$arr]>>.join.join(', '); } -- cgit