diff options
| author | Stephen Lynn <bizlsg@localhost.localdomain> | 2023-01-05 21:21:08 +0800 |
|---|---|---|
| committer | Stephen Lynn <bizlsg@localhost.localdomain> | 2023-01-05 21:21:08 +0800 |
| commit | d92e201ef4f944fc0dc4f366645ddeed61858263 (patch) | |
| tree | 09aa8eb9cacdc62b10054e550c6f95a09ee811a9 | |
| parent | ee249218f373166edca2b95144a9b0b59e200e05 (diff) | |
| download | perlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.tar.gz perlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.tar.bz2 perlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.zip | |
pwc 198
| -rwxr-xr-x | challenge-198/steve-g-lynn/perl/ch-1.pl | 17 | ||||
| -rwxr-xr-x | challenge-198/steve-g-lynn/perl/ch-2.sh | 3 | ||||
| -rwxr-xr-x | challenge-198/steve-g-lynn/raku/ch-1.p6 | 16 | ||||
| -rwxr-xr-x | challenge-198/steve-g-lynn/raku/ch-2.sh | 3 |
4 files changed, 39 insertions, 0 deletions
diff --git a/challenge-198/steve-g-lynn/perl/ch-1.pl b/challenge-198/steve-g-lynn/perl/ch-1.pl new file mode 100755 index 0000000000..72f9a014fe --- /dev/null +++ b/challenge-198/steve-g-lynn/perl/ch-1.pl @@ -0,0 +1,17 @@ +#!/usr/bin/env -S perl -wl + +use strict; + +print &max_gap(2,5,8,1); #2 +print &max_gap(3); #0 + +sub max_gap { + my (@list) = (sort {$a <=> $b} @_); + (@list <= 2) && (return 0); + my %gaps; + + map {$gaps{$list[$_+1]-$list[$_]}++} + (0 .. @list-2); + + $gaps{ (sort {$b <=> $a} (keys %gaps))[0] }; +} diff --git a/challenge-198/steve-g-lynn/perl/ch-2.sh b/challenge-198/steve-g-lynn/perl/ch-2.sh new file mode 100755 index 0000000000..d2fc2df7e8 --- /dev/null +++ b/challenge-198/steve-g-lynn/perl/ch-2.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +perl -MMath::Prime::Util=prime_count -wl -e 'print prime_count($ARGV[0])' $@ diff --git a/challenge-198/steve-g-lynn/raku/ch-1.p6 b/challenge-198/steve-g-lynn/raku/ch-1.p6 new file mode 100755 index 0000000000..4bbc4a23a6 --- /dev/null +++ b/challenge-198/steve-g-lynn/raku/ch-1.p6 @@ -0,0 +1,16 @@ +#!/usr/bin/env perl6 + + +say &max-gap([2,5,8,1]); #2 +say &max-gap([3]); #0 + +sub max-gap (@list) { + my (@sorted_list) = @list.sort( {$^a <=> $^b} ); + (@list.elems <= 2) && (return 0); + my %gaps; + + (0 .. @list-2).map( {%gaps{@list[$_+1]-@list[$_]}++} ); + + + %gaps{ ( (%gaps.keys).sort( {$^b <=> $^a} ))[0] }; +} diff --git a/challenge-198/steve-g-lynn/raku/ch-2.sh b/challenge-198/steve-g-lynn/raku/ch-2.sh new file mode 100755 index 0000000000..4b0260e344 --- /dev/null +++ b/challenge-198/steve-g-lynn/raku/ch-2.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +raku -e '(0..@*ARGS[0]).grep(*.is-prime).elems.say' $@ |
