diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2021-03-30 01:55:15 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-30 01:55:15 +0100 |
| commit | 0d585ccb35aeaec55cfbc0d9dbee7482cce8f60f (patch) | |
| tree | b90a5ea95d17d9201da28a18199ba91118c285ec | |
| parent | 338a327731af357d68feadc5e214c6d7ede3b401 (diff) | |
| parent | 520e96802c6a034a587e1ce33dd5edd4953f5075 (diff) | |
| download | perlweeklychallenge-club-0d585ccb35aeaec55cfbc0d9dbee7482cce8f60f.tar.gz perlweeklychallenge-club-0d585ccb35aeaec55cfbc0d9dbee7482cce8f60f.tar.bz2 perlweeklychallenge-club-0d585ccb35aeaec55cfbc0d9dbee7482cce8f60f.zip | |
Merge pull request #3793 from andemark/branch-for-challenge-106
Challenge 106 Solutions (Raku)
| -rw-r--r-- | challenge-106/mark-anderson/raku/ch-1.raku | 12 | ||||
| -rw-r--r-- | challenge-106/mark-anderson/raku/ch-2.raku | 18 |
2 files changed, 30 insertions, 0 deletions
diff --git a/challenge-106/mark-anderson/raku/ch-1.raku b/challenge-106/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..b04144a364 --- /dev/null +++ b/challenge-106/mark-anderson/raku/ch-1.raku @@ -0,0 +1,12 @@ +#!/usr/bin/env raku + +use Test; +plan 3; + +is max-gap(2, 9, 3, 5), 4; +is max-gap(1, 3, 8, 2, 0), 5; +is max-gap(5), 0; + +multi max-gap($N) { 0 } + +multi max-gap(*@N) { max @N.sort.rotor(2 => -1).map({ .[1] - .[0] }) } diff --git a/challenge-106/mark-anderson/raku/ch-2.raku b/challenge-106/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..2366e111ad --- /dev/null +++ b/challenge-106/mark-anderson/raku/ch-2.raku @@ -0,0 +1,18 @@ +#!/usr/bin/env raku + +use Test; +plan 4; + +is decimal-string(1, 3), "0.(3)"; +is decimal-string(1, 2), "0.5"; +is decimal-string(5, 66), "0.0(75)"; +is decimal-string(3227, 555), "5.8(144)"; + +sub decimal-string($n, $d) +{ + my ($non-rep, $rep) = ($n/$d).base-repeating; + + return $non-rep unless $rep; + + return sprintf '%s(%s)', $non-rep, $rep; +} |
