diff options
| author | Mark <53903062+andemark@users.noreply.github.com> | 2022-12-05 11:36:09 +0000 |
|---|---|---|
| committer | Mark <53903062+andemark@users.noreply.github.com> | 2022-12-05 11:36:09 +0000 |
| commit | 99df15e18aed3f1fd87423712dff01844049e45d (patch) | |
| tree | 7715fa27030a2c9219b9e63739450a08e847376d | |
| parent | 8d4ad39acceae6916068d7661648e075877837cc (diff) | |
| download | perlweeklychallenge-club-99df15e18aed3f1fd87423712dff01844049e45d.tar.gz perlweeklychallenge-club-99df15e18aed3f1fd87423712dff01844049e45d.tar.bz2 perlweeklychallenge-club-99df15e18aed3f1fd87423712dff01844049e45d.zip | |
Challenge 194 Solutions (Raku)
| -rw-r--r-- | challenge-194/mark-anderson/raku/ch-1.raku | 24 | ||||
| -rw-r--r-- | challenge-194/mark-anderson/raku/ch-2.raku | 14 |
2 files changed, 38 insertions, 0 deletions
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; +} |
