summaryrefslogblamecommitdiffstats
path: root/049.pl
blob: 10d714f7d5f3ace5cc41052605ed76647fb409e6 (plain) (tree)


















                                                                               
#!/usr/bin/perl
use strict;
use warnings;
use Math::Prime::XS qw/sieve_primes is_prime/;

my @possibilities = sieve_primes(1000,9999);
my %primes = map { $_, 1 } @possibilities;

PRIME: for my $prime (@possibilities) {
    for my $inc (2..4500) {
        my ($prime2, $prime3) = ($prime + $inc, $prime + $inc + $inc);
        next PRIME if $prime3 > 9999;
        next unless $primes{$prime2} && $primes{$prime3};
        my @sort = map { join '', sort split //, $_ } $prime, $prime2, $prime3;
        if ($sort[0] eq $sort[1] && $sort[0] eq $sort[2]) {
            print "$prime$prime2$prime3\n";
        }
    }
}