From 3417cbc794bf45ba6c48a905554933c5f37fb77c Mon Sep 17 00:00:00 2001 From: KjetilS Date: Sun, 7 Jul 2024 22:14:17 +0200 Subject: https://theweeklychallenge.org/blog/perl-weekly-challenge-276/ --- challenge-276/kjetillll/perl/ch-1.pl | 15 +++++++++++++++ challenge-276/kjetillll/perl/ch-2.pl | 12 ++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 challenge-276/kjetillll/perl/ch-1.pl create mode 100644 challenge-276/kjetillll/perl/ch-2.pl diff --git a/challenge-276/kjetillll/perl/ch-1.pl b/challenge-276/kjetillll/perl/ch-1.pl new file mode 100644 index 0000000000..5ffbce9b13 --- /dev/null +++ b/challenge-276/kjetillll/perl/ch-1.pl @@ -0,0 +1,15 @@ +use strict; use warnings; use Test::More tests=>3; + +sub complete_day_pair_count { + my $pairs = 0; + "@_" =~ / + \b(\d+)\b .+ \b(\d+)\b + (??{ $pairs+=($1+$2)%24==0;'^' }) + /x; + $pairs +} + +is complete_day_pair_count( @{ $$_{input} } ), $$_{output} + for { input => [12, 12, 30, 24, 24], output => 2 }, + { input => [72, 48, 24, 5 ], output => 3 }, + { input => [12, 18, 24 ], output => 0 }; diff --git a/challenge-276/kjetillll/perl/ch-2.pl b/challenge-276/kjetillll/perl/ch-2.pl new file mode 100644 index 0000000000..84e1565657 --- /dev/null +++ b/challenge-276/kjetillll/perl/ch-2.pl @@ -0,0 +1,12 @@ +use strict; use warnings; use Test::More tests => 2; use List::Util qw(max sum); + +sub maximum_frequency { + my %freq; + $freq{ $_ }++ for @_; + my $max_freq = max( values %freq ); + sum( map $freq{$_}, grep $freq{$_} == $max_freq, keys%freq ) +} + +is maximum_frequency( @{ $$_{input} } ), $$_{output} + for { input => [1, 2, 2, 4, 1, 5], output=> 4 }, + { input => [1, 2, 3, 4, 5 ], output=> 5 }; -- cgit From d6504cf10304bd3fbf559c62a793848342dd98b4 Mon Sep 17 00:00:00 2001 From: KjetilS Date: Sun, 7 Jul 2024 22:29:25 +0200 Subject: https://theweeklychallenge.org/blog/perl-weekly-challenge-276/ --- challenge-276/kjetillll/perl/ch-1.pl | 2 +- challenge-276/kjetillll/perl/ch-2.pl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/challenge-276/kjetillll/perl/ch-1.pl b/challenge-276/kjetillll/perl/ch-1.pl index 5ffbce9b13..5aafa7b947 100644 --- a/challenge-276/kjetillll/perl/ch-1.pl +++ b/challenge-276/kjetillll/perl/ch-1.pl @@ -4,7 +4,7 @@ sub complete_day_pair_count { my $pairs = 0; "@_" =~ / \b(\d+)\b .+ \b(\d+)\b - (??{ $pairs+=($1+$2)%24==0;'^' }) + (??{ $pairs += ($1 + $2) % 24 == 0; '^' }) /x; $pairs } diff --git a/challenge-276/kjetillll/perl/ch-2.pl b/challenge-276/kjetillll/perl/ch-2.pl index 84e1565657..ef31b9345e 100644 --- a/challenge-276/kjetillll/perl/ch-2.pl +++ b/challenge-276/kjetillll/perl/ch-2.pl @@ -4,7 +4,7 @@ sub maximum_frequency { my %freq; $freq{ $_ }++ for @_; my $max_freq = max( values %freq ); - sum( map $freq{$_}, grep $freq{$_} == $max_freq, keys%freq ) + sum( map $_, grep $_ == $max_freq, values %freq ) } is maximum_frequency( @{ $$_{input} } ), $$_{output} -- cgit