From 7cd474a40770708dbbc10bc69a33e9698da3c97a Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 22 Nov 2021 14:01:39 +0000 Subject: Challenge 140 Solutions (Raku) --- challenge-140/mark-anderson/raku/ch-1.raku | 13 +++++++++++++ challenge-140/mark-anderson/raku/ch-2.raku | 11 +++++++++++ 2 files changed, 24 insertions(+) create mode 100644 challenge-140/mark-anderson/raku/ch-1.raku create mode 100644 challenge-140/mark-anderson/raku/ch-2.raku diff --git a/challenge-140/mark-anderson/raku/ch-1.raku b/challenge-140/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..f723af6bb9 --- /dev/null +++ b/challenge-140/mark-anderson/raku/ch-1.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku + +# DCB = Decimal Coded Binary +subset DCB of UInt where /^ <[01]>+ $/; + +sub infix:(DCB \a, DCB \b) +{ + (a.Str.parse-base(2) + b.Str.parse-base(2)).base(2); +} + +say 11 b+ 1; +say 101 b+ 1; +say 100 b+ 11; diff --git a/challenge-140/mark-anderson/raku/ch-2.raku b/challenge-140/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..4cc7094b29 --- /dev/null +++ b/challenge-140/mark-anderson/raku/ch-2.raku @@ -0,0 +1,11 @@ +#!/usr/bin/env raku + +say kth-element-from-sorted-multiplication-table(2, 3, 4); +say kth-element-from-sorted-multiplication-table(3, 3, 6); + +sub kth-element-from-sorted-multiplication-table(\i, \j, \k) +{ + my @table; + @table[.head; .tail] = .head.succ * .tail.succ for ^i X ^j; + @table.map(|*).sort.[k-1]; +} -- cgit From 418b232eaa5b8e74a4e5a5cea53ee03e8ca3e500 Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Tue, 23 Nov 2021 00:48:41 +0000 Subject: never mind. my solutions sucked :-( --- challenge-140/mark-anderson/raku/ch-1.raku | 13 ------------- challenge-140/mark-anderson/raku/ch-2.raku | 11 ----------- 2 files changed, 24 deletions(-) delete mode 100644 challenge-140/mark-anderson/raku/ch-1.raku delete mode 100644 challenge-140/mark-anderson/raku/ch-2.raku diff --git a/challenge-140/mark-anderson/raku/ch-1.raku b/challenge-140/mark-anderson/raku/ch-1.raku deleted file mode 100644 index f723af6bb9..0000000000 --- a/challenge-140/mark-anderson/raku/ch-1.raku +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env raku - -# DCB = Decimal Coded Binary -subset DCB of UInt where /^ <[01]>+ $/; - -sub infix:(DCB \a, DCB \b) -{ - (a.Str.parse-base(2) + b.Str.parse-base(2)).base(2); -} - -say 11 b+ 1; -say 101 b+ 1; -say 100 b+ 11; diff --git a/challenge-140/mark-anderson/raku/ch-2.raku b/challenge-140/mark-anderson/raku/ch-2.raku deleted file mode 100644 index 4cc7094b29..0000000000 --- a/challenge-140/mark-anderson/raku/ch-2.raku +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env raku - -say kth-element-from-sorted-multiplication-table(2, 3, 4); -say kth-element-from-sorted-multiplication-table(3, 3, 6); - -sub kth-element-from-sorted-multiplication-table(\i, \j, \k) -{ - my @table; - @table[.head; .tail] = .head.succ * .tail.succ for ^i X ^j; - @table.map(|*).sort.[k-1]; -} -- cgit