diff options
| author | Walt Mankowski <waltman@pobox.com> | 2020-07-22 19:18:41 -0400 |
|---|---|---|
| committer | Walt Mankowski <waltman@pobox.com> | 2020-07-22 19:18:41 -0400 |
| commit | aa197c2dabf76dc064e5f4b8a39abede35e7b3e6 (patch) | |
| tree | fae81f651c8c4054d72f686728c3c76ed1f3ac45 | |
| parent | a85885eff87ca80ae477117a7d1c1e454cde7416 (diff) | |
| download | perlweeklychallenge-club-aa197c2dabf76dc064e5f4b8a39abede35e7b3e6.tar.gz perlweeklychallenge-club-aa197c2dabf76dc064e5f4b8a39abede35e7b3e6.tar.bz2 perlweeklychallenge-club-aa197c2dabf76dc064e5f4b8a39abede35e7b3e6.zip | |
simplified the logic for task 2
| -rw-r--r-- | challenge-070/walt-mankowski/perl/ch-2.pl | 3 | ||||
| -rw-r--r-- | challenge-070/walt-mankowski/python/ch-2.py | 4 |
2 files changed, 2 insertions, 5 deletions
diff --git a/challenge-070/walt-mankowski/perl/ch-2.pl b/challenge-070/walt-mankowski/perl/ch-2.pl index 98d26781f5..3d261acfc4 100644 --- a/challenge-070/walt-mankowski/perl/ch-2.pl +++ b/challenge-070/walt-mankowski/perl/ch-2.pl @@ -55,6 +55,5 @@ for my $i (3..$n) { say "@S"; sub gray_code($n, @S) { - my @S2 = map { "1$_" } reverse map { sprintf "%.*b", $n-1, $_ } @S; - return @S, map { eval "0b$_" } @S2; + return @S, reverse map { 2**($n-1) + $_ } @S; } diff --git a/challenge-070/walt-mankowski/python/ch-2.py b/challenge-070/walt-mankowski/python/ch-2.py index be0f8ac2d3..bb052aa981 100644 --- a/challenge-070/walt-mankowski/python/ch-2.py +++ b/challenge-070/walt-mankowski/python/ch-2.py @@ -4,9 +4,7 @@ n = int(argv[1]) S = [0, 1, 3, 2] def gray_code(n, S): - fmt = f"0{n-1}b" - S2 = [eval(f"0b1{x}") for x in [f"{x:{fmt}}" for x in S][::-1]] - return S + S2 + return S + [2**(n-1) + x for x in S][::-1] for i in range(3, n+1): S = gray_code(i, S) |
