From 99df15e18aed3f1fd87423712dff01844049e45d Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 5 Dec 2022 11:36:09 +0000 Subject: Challenge 194 Solutions (Raku) --- challenge-194/mark-anderson/raku/ch-1.raku | 24 ++++++++++++++++++++++++ challenge-194/mark-anderson/raku/ch-2.raku | 14 ++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 challenge-194/mark-anderson/raku/ch-1.raku create mode 100644 challenge-194/mark-anderson/raku/ch-2.raku diff --git a/challenge-194/mark-anderson/raku/ch-1.raku b/challenge-194/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..d7767f44af --- /dev/null +++ b/challenge-194/mark-anderson/raku/ch-1.raku @@ -0,0 +1,24 @@ +#!/usr/bin/env raku +use Test; + +is digital-clock('?5:00'), 1; +is digital-clock('?3:00'), 2; +is digital-clock('1?:00'), 9; +is digital-clock('2?:00'), 3; +is digital-clock('12:?5'), 5; +is digital-clock('12:5?'), 9; + +sub digital-clock($t) +{ + return do given $t.index('?') + { + when 4 { 9 } + when 3 { 5 } + default + { + my $d = $t ~~ m:1st/\d/; + when 1 { $d < 2 ?? 9 !! 3 } + default { $d < 4 ?? 2 !! 1 } + } + } +} diff --git a/challenge-194/mark-anderson/raku/ch-2.raku b/challenge-194/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..b739dd9bf3 --- /dev/null +++ b/challenge-194/mark-anderson/raku/ch-2.raku @@ -0,0 +1,14 @@ +#!/usr/bin/env raku +use Test; + +ok freq-equalizer('abbc'); +ok freq-equalizer('xyzyyxz'); +nok freq-equalizer('xzxz'); +ok freq-equalizer('xxxxx'); + +sub freq-equalizer($_) +{ + my $bag = .comb.BagHash; + $bag{ $bag.antipairs.max.value }--; + [==] $bag.values; +} -- cgit