$ ./two_digit_combo.pl | perl -ne 'print join " ", sort unpack("A2" x
+(length()/2), $_)'
00 01 02 03 04 05 06 07 08 09 11 12 13 14 15 16 17 18 19 22 23 24 25 2
+6 27 28 29 33 34 35 36 37 38 39 44 45 46 47 48 49 55 56 57 58 59 66 6
+7 68 69 77 78 79 88 89 99
$ cat two_digit_combo.pl
#!/usr/local/bin/perl
for('00'..'99'){$h{$_}++if(!($h{$_}||$h{reverse$_}))}print keys%h
$
Clearly, '00' is right at the beginning of the output.
---- I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
-- Schemer
Note: All code is untested, unless otherwise stated
| [reply] [d/l] |
When I run that code:
for('00'..'99'){$h{$_}++if(!($h{$_}||$h{reverse$_}))}print keys%hI get this:
67330568261704029988180316064455272528015714695907498924003511787948227708461323293936581215473834566637451909which is clearly incorrect. It does not contain 10, 20, 41, 42, 43, 50, 53, 62, 75, 76, 85, 86, 91, 96, 97, and it duplicates 03, 15, 17, 27, 29, 32, 40, 45, 46, 51, 52, 56, 61, 66, 70, 73, 74, 80, 81, 82, 90, 93, 98.
| [reply] [d/l] [select] |
No, it's just out of order, due to the fact that it's printing psudo-random hash keys. You didn't specify that it has to be in order :)
Run it through my digit-splitter I posted in another thread and you'll see that all the pairs are there.
Update: Ahh, I see. I have the same problem that LTjake does :(
---- I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
-- Schemer
Note: All code is untested, unless otherwise stated
| [reply] |