- #!/usr/bin/perl
-
- use strict;
- use warnings;
- use combinatorics;
-
-
-
- open PRIMES, "primes_under_1000000.TXT" or die("CAN'T OPEN FILE.\n");
-
-
-
- my %primes;
- my ($n, $c);
- my $p = '';
- my $largest = 0;
-
- $primes{int $_} = 1 for (grep {$_ < sqrt 7654321 } <PRIMES>);
-
-
-
- for (my $k=0; $k<7*6*5*4*3*2-1; $k++) {
- $n = int join '', combinatorics::permute($k, 1..7);
- $c = 0;
-
- next unless (($n-1)%6 == 0 || ($n+1)%6 == 0 || $n%2 == 1);
-
- for $p (keys %primes) {
- if ($n%$p == 0 && $p < $n) {
- $c++;
- last;
- }
- }
-
- $largest = $n if $c == 0 && $largest < $n;
- }
-
-
-
- print $largest;