summaryrefslogblamecommitdiffstats
path: root/035.pl
blob: a7a34cbfc39ca36a490a5dcd295bf60f189bc9ba (plain) (tree)






















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

sub rotations {
    my $str = shift;
    my @ret;
    for (1..(length $str)) {
        push @ret, $str;
        my $letter = substr $str, 0, 1, '';
        $str = "$str$letter";
    }
    return @ret;
}

my %primes = map { $_, 1 } sieve_primes(1e6);
my $total = 0;
for my $prime (keys %primes) {
    $total++ if all { exists $primes{$_} } rotations($prime);
}
print "$total\n";