diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2023-10-31 16:40:15 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-31 16:40:15 +0000 |
| commit | fd8e62f616dfb207ce9891f448e279b7385ad1a6 (patch) | |
| tree | 58fd2b452e5e5d84e7092f3fc610c7c9221099d1 /challenge-241 | |
| parent | 0c46668039ce086726d2579730550a66c80548df (diff) | |
| parent | 78d2196554ebb81ecbcdc2e056e477497675c1ca (diff) | |
| download | perlweeklychallenge-club-fd8e62f616dfb207ce9891f448e279b7385ad1a6.tar.gz perlweeklychallenge-club-fd8e62f616dfb207ce9891f448e279b7385ad1a6.tar.bz2 perlweeklychallenge-club-fd8e62f616dfb207ce9891f448e279b7385ad1a6.zip | |
Merge pull request #8973 from wlmb/challenges
Solve PWC241
Diffstat (limited to 'challenge-241')
| -rw-r--r-- | challenge-241/wlmb/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-241/wlmb/perl/ch-1.pl | 17 | ||||
| -rwxr-xr-x | challenge-241/wlmb/perl/ch-2.pl | 12 |
3 files changed, 30 insertions, 0 deletions
diff --git a/challenge-241/wlmb/blog.txt b/challenge-241/wlmb/blog.txt new file mode 100644 index 0000000000..82867ba55b --- /dev/null +++ b/challenge-241/wlmb/blog.txt @@ -0,0 +1 @@ +https://wlmb.github.io/2023/10/30/PWC241/ diff --git a/challenge-241/wlmb/perl/ch-1.pl b/challenge-241/wlmb/perl/ch-1.pl new file mode 100755 index 0000000000..1dd1be854b --- /dev/null +++ b/challenge-241/wlmb/perl/ch-1.pl @@ -0,0 +1,17 @@ +#!/usr/bin/env perl +# Perl weekly challenge 241 +# Task 1: Arithmetic Triplets +# +# See https://wlmb.github.io/2023/10/30/PWC241/#task-1-arithmetic-triplets +use v5.36; +use List::Util qw(all); +use Algorithm::Combinatorics qw(combinations); +die <<~"FIN" if @ARGV<2; + Usage: $0 D N0 [N1...] + to count the triplets taken from N0 N1... with difference D between succesive terms; + FIN +my $diff=shift; +my @sorted=sort {$a <=> $b} @ARGV; +die "Array should be ordered" unless all {$sorted[$_]==$ARGV[$_]} 0..@ARGV-1; +say "Nums: @sorted, diff: $diff -> ", + 0+grep{$_->[1]-$_->[0]==$_->[2]-$_->[1]==$diff} combinations([@sorted],3) diff --git a/challenge-241/wlmb/perl/ch-2.pl b/challenge-241/wlmb/perl/ch-2.pl new file mode 100755 index 0000000000..daa9d93bfd --- /dev/null +++ b/challenge-241/wlmb/perl/ch-2.pl @@ -0,0 +1,12 @@ +#!/usr/bin/env perl +# Perl weekly challenge 241 +# Task 2: Prime Order +# +# See https://wlmb.github.io/2023/10/30/PWC241/#task-2-prime-order +use v5.36; +use Math::Prime::Util qw(factor); +die <<~"FIN" unless @ARGV; + Usage: $0 N0 [N1...] + to order the numbers N0 N1 according to the number of factors and their value. + FIN +say join " ", @ARGV, "->", sort{factor($a)<=>factor($b) || $a <=> $b} @ARGV |
