aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <Mohammad.Anwar@yahoo.com>2025-05-11 00:36:49 +0100
committerGitHub <noreply@github.com>2025-05-11 00:36:49 +0100
commit8a85f105a6f07404785515c25f50e8a697813931 (patch)
tree6d4e299155d0b27ee1d81a5eabb863bbfafe7def
parente2cf6d9c10c79cbdbfddec0f7fe8f22a998b33f9 (diff)
parent2c6d46fba7dc3e812b7decb8f88265c92b4adb24 (diff)
downloadperlweeklychallenge-club-8a85f105a6f07404785515c25f50e8a697813931.tar.gz
perlweeklychallenge-club-8a85f105a6f07404785515c25f50e8a697813931.tar.bz2
perlweeklychallenge-club-8a85f105a6f07404785515c25f50e8a697813931.zip
Merge pull request #11998 from adamcrussell/challenge-320
initial commit
-rw-r--r--challenge-320/adam-russell/blog.txt1
-rw-r--r--challenge-320/adam-russell/perl/ch-1.pl23
-rw-r--r--challenge-320/adam-russell/perl/ch-2.pl27
3 files changed, 51 insertions, 0 deletions
diff --git a/challenge-320/adam-russell/blog.txt b/challenge-320/adam-russell/blog.txt
new file mode 100644
index 0000000000..e567a8bf44
--- /dev/null
+++ b/challenge-320/adam-russell/blog.txt
@@ -0,0 +1 @@
+http://rabbitfarm.com/cgi-bin/blosxom/perl/2025/05/10
diff --git a/challenge-320/adam-russell/perl/ch-1.pl b/challenge-320/adam-russell/perl/ch-1.pl
new file mode 100644
index 0000000000..40e4e23878
--- /dev/null
+++ b/challenge-320/adam-russell/perl/ch-1.pl
@@ -0,0 +1,23 @@
+
+
+use v5.40;
+
+
+ sub maximum_count{
+ my @numbers = @_;
+
+ my $negatives = 0 + grep {$_ < 0} @numbers;
+
+
+ my $positives = 0 + grep {$_ > 0} @numbers;
+
+ return (sort {$b <=> $a} ($positives, $negatives))[0];
+ }
+
+
+MAIN:{
+ say maximum_count -3, -2, -1, 1, 2, 3;
+ say maximum_count -2, -1, 0, 0, 1;
+ say maximum_count 1, 2, 3, 4;
+}
+
diff --git a/challenge-320/adam-russell/perl/ch-2.pl b/challenge-320/adam-russell/perl/ch-2.pl
new file mode 100644
index 0000000000..432cee8e70
--- /dev/null
+++ b/challenge-320/adam-russell/perl/ch-2.pl
@@ -0,0 +1,27 @@
+
+
+use v5.40;
+
+
+ sub sum_difference{
+ my @numbers = @_;
+
+ my @digits;
+ do{
+ push @digits, split //, $_;
+ } for @numbers;
+ my $digit_sum = unpack(q/%32I*/, pack(q/I*/, @digits));
+
+
+ my $element_sum = unpack(q/%32I*/, pack(q/I*/, @numbers));
+
+ return abs($digit_sum - $element_sum);
+ }
+
+
+MAIN:{
+ say sum_difference 1, 23, 4, 5;
+ say sum_difference 1, 2, 3, 4, 5;
+ say sum_difference 1, 2, 34;
+}
+