summaryrefslogtreecommitdiffstats
path: root/033.pl
blob: 2eed23458a3f26d31562e855017457d9d7f63ca9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/perl
use strict;
use warnings;

my ($num_total, $denom_total) = (1, 1);
for my $num (10..99) {
    for my $denom ($num..99) {
        next if $num == $denom;
        my $real_frac = $num / $denom;

        my ($n1, $n2) = split //, $num;
        my $denom_test = $denom;
        my $frac;
        if ($denom_test =~ s/$n1//) {
            next unless $denom_test && $n1;
            $frac = $n2 / $denom_test;
        }
        elsif ($denom_test =~ s/$n2//) {
            next unless $denom_test && $n2;
            $frac = $n1 / $denom_test;
        }
        else {
            next;
        }
        if ($frac == $real_frac) {
            $num_total *= $num;
            $denom_total *= $denom;
        }
    }
}
print $num_total/$denom_total, "\n";