diff options
| author | James Smith <js5@sanger.ac.uk> | 2022-11-21 10:06:53 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-21 10:06:53 +0000 |
| commit | c168e00d304e7ae57f59012beb6a94ef43bce7eb (patch) | |
| tree | c68cad93091675eae52b19173cade74c0218e554 | |
| parent | 65768e01278e2130696dedc43ecb66ffa415ef17 (diff) | |
| download | perlweeklychallenge-club-c168e00d304e7ae57f59012beb6a94ef43bce7eb.tar.gz perlweeklychallenge-club-c168e00d304e7ae57f59012beb6a94ef43bce7eb.tar.bz2 perlweeklychallenge-club-c168e00d304e7ae57f59012beb6a94ef43bce7eb.zip | |
Update ch-1.pl
| -rw-r--r-- | challenge-192/james-smith/perl/ch-1.pl | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/challenge-192/james-smith/perl/ch-1.pl b/challenge-192/james-smith/perl/ch-1.pl index 4a347bc343..6526f74650 100644 --- a/challenge-192/james-smith/perl/ch-1.pl +++ b/challenge-192/james-smith/perl/ch-1.pl @@ -11,8 +11,13 @@ use Data::Dumper qw(Dumper); my @TESTS = ( [5,2],[4,3],[6,1] ); is( binary_flip( $_->[0] ), $_->[1] ) for @TESTS; +is( string_flip( $_->[0] ), $_->[1] ) for @TESTS; done_testing(); +sub string_flip { + oct '0b'.sprintf('%b',$_[0])=~tr/01/10/r; +} + sub binary_flip { my($r,$k,$n) = (0,1,shift); $r|=(~$n&1)<<$k++, $n>>=1 while $n; |
