Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: Vampire Numbers

by particle (Vicar)
on Jun 11, 2002 at 01:02 UTC ( [id://173355]=note: print w/replies, xml ) Need Help??


in reply to Vampire Numbers

i love these problems, YuckFoo. i think i should pick up one of these books you've been reading. i keep my skills sharp with martin gardner's puzzlers ( here's a book list. )

okay, so this code's a little evil :P

i should probably document it a bit.... here goes:

#!/usr/bin/perl use strict; use warnings; $|++; # is using Algorithm::FastPermute cheating? i hope not. use Algorithm::FastPermute qw/ permute /; ## use Data::Dumper; # see what's inside... ( @ARGV == 2 and $ARGV[0] < $ARGV[1] ) # process arguments ? my( $lower, $upper ) = @ARGV : die 'usage: ' . $0 . ' lower upper' . $/; NUMBER: for my $try ( $lower..$upper ) { # try each number within bounds my @digits = split //, '*' . $try; # makes ( '*', 1, 2, 3, etc ) my @permutations; # holds permutations # push permutations onto array # unless the permutation has a '*' on either end permute { push @permutations, [ @digits ] unless @digits->[-1] eq '*' or @digits->[0] eq '*'; } @digits; ## # uncomment to see what's inside... ## print Dumper \@permutations; my %results = # product => operation pairs map { eval( $_ ) || 0, $_ } # create pair map { join( '', @{ $_ } ) } # stringify the array @permutations; # for each permutation ## # uncomment to see what's inside... ## print Dumper \@permutations; defined $results{ $try } # if i found one && print( $try, # print it ' is vampire (', $results{ $try }, # and how i got there ')', $/ ) && next NUMBER; }

~Particle *accelerates*

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://173355]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (3)
As of 2024-03-29 06:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found