diff options
| author | Scimon <simon.proctor@gmail.com> | 2025-08-26 10:17:32 +0100 |
|---|---|---|
| committer | Scimon <simon.proctor@gmail.com> | 2025-08-26 10:17:32 +0100 |
| commit | a7a4c17b8063faecae6c17225be92107fe90f088 (patch) | |
| tree | 11084ed25f66a304adcf6c9a4583cda1ccafb29a | |
| parent | cfe111699674dcbdae6a9172888ec4a0cf5ca4c1 (diff) | |
| download | perlweeklychallenge-club-a7a4c17b8063faecae6c17225be92107fe90f088.tar.gz perlweeklychallenge-club-a7a4c17b8063faecae6c17225be92107fe90f088.tar.bz2 perlweeklychallenge-club-a7a4c17b8063faecae6c17225be92107fe90f088.zip | |
Part 1 done
| -rwxr-xr-x | challenge-336/simon-proctor/raku/ch-1.raku | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/challenge-336/simon-proctor/raku/ch-1.raku b/challenge-336/simon-proctor/raku/ch-1.raku new file mode 100755 index 0000000000..c14f3870b9 --- /dev/null +++ b/challenge-336/simon-proctor/raku/ch-1.raku @@ -0,0 +1,23 @@ +#!/usr/bin/env raku + +multi sub MAIN(:t(:$test)) is hidden-from-USAGE { + use Test; + is equal-group(1,1,2,2,2,2), True; + is equal-group(1,2,1,2,2,2), True; + is equal-group(1,1,1,2,2,2,3,3), False; + is equal-group(5,5,5,5,5,5,7,7,7,7,7,7), True; + is equal-group(1,2,3,4), False; + is equal-group(8,8,9,9,10,10,11,11), True; + done-testing; +} + +multi sub MAIN(*@args where all(@args) ~~ Int() ) { + equal-group(|@args).say; +} + +sub equal-group(*@args where all(@args) ~~ Int() ) { + my $bag = @args.Bag; + my $min-len = $bag.values.min; + return False if $min-len < 2; + return so all( $bag.values >>%%>> $min-len ); +} |
