From 61d3daa4027caff03630c96910623a75075b244a Mon Sep 17 00:00:00 2001 From: Guillermo Ramos Date: Sun, 30 Jun 2019 15:35:54 +0200 Subject: [014#2] Optimizations --- 014/ch2.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to '014/ch2.pl') diff --git a/014/ch2.pl b/014/ch2.pl index ae9027f..33e3092 100755 --- a/014/ch2.pl +++ b/014/ch2.pl @@ -33,10 +33,12 @@ my $max_len = 0; # Given a word, return whether it can be composed using state abbreviations sub suitable { - $_ =~ s/^\s+|\s+$//g; # Trim + $_ =~ s/\s+$//g; # Trim my $len = length $_; - return 0 if $len % 2 != 0; # Length must be even + + # Discard shorter words or the ones which have odd number of letters + return 0 if $len < $max_len || $len % 2 != 0; # Iterate word in 2-letter chunks checking they are valid abbreviations foreach my $i (0 .. $len/2-1) { -- cgit v1.2.3