From f863f9659a7a0209ba8c2ef2b9f052cc422471ee Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 12 Dec 2022 20:37:20 +0000 Subject: Challenge 195 Solutions (Raku) --- challenge-195/mark-anderson/raku/ch-1.raku | 18 ++++++++++++++++++ challenge-195/mark-anderson/raku/ch-2.raku | 11 +++++++++++ 2 files changed, 29 insertions(+) create mode 100644 challenge-195/mark-anderson/raku/ch-1.raku create mode 100644 challenge-195/mark-anderson/raku/ch-2.raku diff --git a/challenge-195/mark-anderson/raku/ch-1.raku b/challenge-195/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..32539e82ae --- /dev/null +++ b/challenge-195/mark-anderson/raku/ch-1.raku @@ -0,0 +1,18 @@ +#!/usr/bin/env raku +use Test; + +is special-integers(15), 14; +is special-integers(35), 32; +is special-integers(9_999_999), 712890; + +sub special-integers($n) +{ + .elems given gather for (^10).combinations(1..$n.chars) + { + for .permutations + { + next unless .head; + .take unless $_ > $n given .join + } + } +} diff --git a/challenge-195/mark-anderson/raku/ch-2.raku b/challenge-195/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..574f857543 --- /dev/null +++ b/challenge-195/mark-anderson/raku/ch-2.raku @@ -0,0 +1,11 @@ +#!/usr/bin/env raku +use Test; + +is most-frequent-even(1,1,2,6,2), 2; +is most-frequent-even(1,3,5,7), Inf; +is most-frequent-even(6,4,4,6,1), 4; + +sub most-frequent-even(*@list) +{ + @list.grep(* %% 2).Bag.maxpairs>>.key.min +} -- cgit From cce1735620dd943802adc0c1a16d59758dde79f1 Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 12 Dec 2022 21:41:25 +0000 Subject: Challenge 195 Solutions (Raku) --- challenge-195/mark-anderson/raku/ch-1.raku | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/challenge-195/mark-anderson/raku/ch-1.raku b/challenge-195/mark-anderson/raku/ch-1.raku index 32539e82ae..f71c30c3b8 100644 --- a/challenge-195/mark-anderson/raku/ch-1.raku +++ b/challenge-195/mark-anderson/raku/ch-1.raku @@ -7,12 +7,16 @@ is special-integers(9_999_999), 712890; sub special-integers($n) { - .elems given gather for (^10).combinations(1..$n.chars) + my $i; + + for (^10).combinations(1..$n.chars) { for .permutations { next unless .head; - .take unless $_ > $n given .join + $i++ unless $_ > $n given .join } } + + $i } -- cgit