note
FunkyMonk
<blockquote><i>this string of hex-digits reduces to "42"</i></blockquote>
A few of which are: <p>
<code>
7+c+9+6+9+5+c+b+2+3+a+7+1+d+8+5+1+6+8+8+c+c+0+d+7-f*8-b+1*0-7*2
7-c-9-6-9-5-c-b-2-3-a-7-1-d-8-5-1-6-8-8-c-c-0+d*7+f*8-b*1+0-7+2
7*c*9*6*9*5*c*b*2*3*a*7*1*d*8*5*1*6*8*8*c*c*0*d-7+f+8+b+1-0+7*2
7*c*9*6*9*5*c*b*2*3*a*7*1*d*8*5*1*6*8*8/c/c*0-d+7+f+8+b-1*0+7*2
</code><p>
<code>
#!/usr/local/bin/perl
use 5.010;
use strict;
use warnings FATAL => 'all';
my $hex = '7c9695cb23a71d851688cc0d7f8b1072';
my @num = map {hex} split '', $hex;
forty_two(42 => @num);
sub forty_two {
my ($target, $expr, $first, @rest) = @_;
state $count_hit = 0;
state $count_total = 0;
unless (defined $first) {
$count_total++;
if (eval $expr == $target) {
$count_hit++;
$expr =~ s/(\d+)/sprintf "%x", $1/eg;
say "$count_hit/$count_total: $expr == 42";
}
return;
}
forty_two($target, "$expr+$first", @rest);
forty_two($target, "$expr-$first", @rest);
forty_two($target, "$expr*$first", @rest);
if ($first) {
my ($last_term) = $expr =~ m{(\d+(?:[*/]\d+)*)$};
forty_two($target, "$expr/$first", @rest)
if eval "$last_term % $first == 0";
}
}
</code><p>
Please don't wait for it to finish running ;)
904029
904035