From ddf1af8b36c77f9ebe1175fdfa711505f1264c0a Mon Sep 17 00:00:00 2001 From: Niels van Dijke Date: Mon, 8 Jul 2024 06:39:29 +0000 Subject: Task 1, shorter code using "singleton()" --- challenge-277/perlboy1967/perl/ch1.pl | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/challenge-277/perlboy1967/perl/ch1.pl b/challenge-277/perlboy1967/perl/ch1.pl index 1ced4da647..0cfaa4bcb2 100755 --- a/challenge-277/perlboy1967/perl/ch1.pl +++ b/challenge-277/perlboy1967/perl/ch1.pl @@ -23,14 +23,12 @@ use common::sense; use Test2::V0 qw(-no_srand); +use List::AllUtils qw(singleton); + sub countCommon { - my ($arW1,$arW2,%f1,%f2,%fc) = @_; - map { $f1{$_}++ } @$arW1; - map { $f2{$_}++ } @$arW2; - map { $fc{$_}++ } - (grep { $f1{$_} == 1 } keys %f1), - (grep { $f2{$_} == 1 } keys %f2); - scalar grep { $_ == 2 } values %fc; + my %f; + $f{$_}++ for (singleton(@{$_[0]}),singleton(@{$_[1]})); + grep { $_ == 2 } values %f; } is(countCommon([qw{Perl is my friend}], -- cgit