aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWalt Mankowski <waltman@pobox.com>2020-07-16 21:26:17 -0400
committerWalt Mankowski <waltman@pobox.com>2020-07-16 21:26:17 -0400
commita19f49c909d5a5d5ce47de002140b62934295033 (patch)
treeff832384338675ee65e987fbb8cfcf7e8ac24b0e
parent627f97dfe8fecdcc005d7dbdcca86b8a1a36523a (diff)
downloadperlweeklychallenge-club-a19f49c909d5a5d5ce47de002140b62934295033.tar.gz
perlweeklychallenge-club-a19f49c909d5a5d5ce47de002140b62934295033.tar.bz2
perlweeklychallenge-club-a19f49c909d5a5d5ce47de002140b62934295033.zip
use tr / str.translate() instead of iterating
-rw-r--r--challenge-069/walt-mankowski/perl/ch-1.pl5
-rw-r--r--challenge-069/walt-mankowski/python/ch-1.py2
2 files changed, 4 insertions, 3 deletions
diff --git a/challenge-069/walt-mankowski/perl/ch-1.pl b/challenge-069/walt-mankowski/perl/ch-1.pl
index 599be08898..c5e03de0db 100644
--- a/challenge-069/walt-mankowski/perl/ch-1.pl
+++ b/challenge-069/walt-mankowski/perl/ch-1.pl
@@ -25,6 +25,7 @@ for my $n ($A..$B) {
}
sub is_strobogrammatic($n) {
- my $flipped = join '', reverse map { $flip[$_] } split //, $n;
- return $n eq $flipped;
+ my $flipped = $n;
+ $flipped =~ tr/0123456789/01xxxx9x86/;
+ return $n eq scalar reverse $flipped;
}
diff --git a/challenge-069/walt-mankowski/python/ch-1.py b/challenge-069/walt-mankowski/python/ch-1.py
index 4d61f95549..d54f8e010d 100644
--- a/challenge-069/walt-mankowski/python/ch-1.py
+++ b/challenge-069/walt-mankowski/python/ch-1.py
@@ -3,7 +3,7 @@ from sys import argv
flip = [str(x) for x in [0, 1, 'x', 'x', 'x', 'x', 9, 'x', 8, 6]]
def is_strobogrammatic(n):
- flipped = ''.join([flip[int(x)] for x in n])[::-1]
+ flipped = n.translate(str.maketrans('0123456789', '01xxxx9x86'))[::-1]
return n == flipped
A, B = [int(x) for x in argv[1:3]]