aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrbaggy <js5@sanger.ac.uk>2021-10-19 16:31:26 +0100
committerdrbaggy <js5@sanger.ac.uk>2021-10-19 16:31:26 +0100
commit8699e810931218e4437ae9c8926772616f249e06 (patch)
tree50ca95491f4f9bfc13602443a99e57717913291b
parent763ef4dce78fef05d7b450ae9dd71c9cba94b4af (diff)
downloadperlweeklychallenge-club-8699e810931218e4437ae9c8926772616f249e06.tar.gz
perlweeklychallenge-club-8699e810931218e4437ae9c8926772616f249e06.tar.bz2
perlweeklychallenge-club-8699e810931218e4437ae9c8926772616f249e06.zip
added some golfed solutions
-rw-r--r--challenge-135/james-smith/perl/ch-1.pl9
1 files changed, 4 insertions, 5 deletions
diff --git a/challenge-135/james-smith/perl/ch-1.pl b/challenge-135/james-smith/perl/ch-1.pl
index 780b93d005..5f9b117675 100644
--- a/challenge-135/james-smith/perl/ch-1.pl
+++ b/challenge-135/james-smith/perl/ch-1.pl
@@ -9,6 +9,8 @@ use Benchmark qw(cmpthese timethis);
use Data::Dumper qw(Dumper);
my @TESTS = (
+ [ 123456789, 456 ],
+ [ -1234567, 345 ],
[ 1234567, 345 ],
[ -123, 123 ],
[ 1, 'Too short' ],
@@ -32,10 +34,7 @@ sub middle3 {
}
sub middle3no {
- my $n = abs shift;
- return length $n < 3 ? 'Too short'
- : (length $n)%2 ? substr $n, (-3 + length $n ) / 2, 3
- : 'Even digits'
- ;
+ my$l=length(my$n=abs shift);
+ return$l<3?'Too short':$l%2?substr$n,$l/2-1,3:'Even digits';
}