diff options
| author | drbaggy <js5@sanger.ac.uk> | 2021-10-19 16:31:26 +0100 |
|---|---|---|
| committer | drbaggy <js5@sanger.ac.uk> | 2021-10-19 16:31:26 +0100 |
| commit | 8699e810931218e4437ae9c8926772616f249e06 (patch) | |
| tree | 50ca95491f4f9bfc13602443a99e57717913291b | |
| parent | 763ef4dce78fef05d7b450ae9dd71c9cba94b4af (diff) | |
| download | perlweeklychallenge-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.pl | 9 |
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'; } |
