aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Lynn <bizlsg@localhost.localdomain>2023-01-05 21:21:08 +0800
committerStephen Lynn <bizlsg@localhost.localdomain>2023-01-05 21:21:08 +0800
commitd92e201ef4f944fc0dc4f366645ddeed61858263 (patch)
tree09aa8eb9cacdc62b10054e550c6f95a09ee811a9
parentee249218f373166edca2b95144a9b0b59e200e05 (diff)
downloadperlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.tar.gz
perlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.tar.bz2
perlweeklychallenge-club-d92e201ef4f944fc0dc4f366645ddeed61858263.zip
pwc 198
-rwxr-xr-xchallenge-198/steve-g-lynn/perl/ch-1.pl17
-rwxr-xr-xchallenge-198/steve-g-lynn/perl/ch-2.sh3
-rwxr-xr-xchallenge-198/steve-g-lynn/raku/ch-1.p616
-rwxr-xr-xchallenge-198/steve-g-lynn/raku/ch-2.sh3
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' $@