aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-111/james-smith/perl/ch-1.pl11
1 files changed, 6 insertions, 5 deletions
diff --git a/challenge-111/james-smith/perl/ch-1.pl b/challenge-111/james-smith/perl/ch-1.pl
index 02fa3c878a..4635c73bbc 100644
--- a/challenge-111/james-smith/perl/ch-1.pl
+++ b/challenge-111/james-smith/perl/ch-1.pl
@@ -110,11 +110,12 @@ cmpthese(10_000, {
sub find_val_dnf {
my($v,$m) = @_;
- return 0 if $v < $m->[0][0] || $v > $m->[4][4];
- my $i = $v < $m->[3][0]
- ? ( $v < $m->[1][0] ? 0 : $v < $m->[2][0] ? 1 : 2 )
- : ( $v < $m->[4][0] ? 3 : 4 );
- return 0 + grep { $v == $_ } @{$m->[$i]};
+ return $v < $m->[0][0] || $v > $m->[4][4]
+ ? 0
+ : 0 + grep { $v == $_ } @{$m->[ $v < $m->[3][0]
+ ? ( $v < $m->[1][0] ? 0 : $v < $m->[2][0] ? 1 : 2 )
+ : ( $v < $m->[4][0] ? 3 : 4 )
+ ]};
}
sub flatten {