diff options
| -rwxr-xr-x | challenge-192/perlboy1967/perl/ch-1.pl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/challenge-192/perlboy1967/perl/ch-1.pl b/challenge-192/perlboy1967/perl/ch-1.pl index 106fed0019..f3c1f5abbf 100755 --- a/challenge-192/perlboy1967/perl/ch-1.pl +++ b/challenge-192/perlboy1967/perl/ch-1.pl @@ -24,17 +24,17 @@ use Benchmark qw(:all); sub binaryFlipString ($) { - my $n = sprintf('%b',$_[0]); - $n =~ tr/01/10/; - return oct('0b'.$n); + return oct('0b'.sprintf('%b',$_[0]) =~ tr/01/10/r); } sub binaryFlipBinary ($) { my ($i,$m) = ($_[0],0); + # Create bitmask for 'AND' below while ($i) { $i >>= 1; $m = ($m << 1) + 1; } + return ~$_[0] & $m; } |
