blob: b1f8808cb86ebaef7f5f3a906310e3e38cecdc2a (
plain) (
tree)
|
|
#!/usr/bin/perl
use strict;
use warnings;
use Math::Prime::XS qw/sieve_primes/;
my @primes = sieve_primes(1e6);
my %primes = map { $_, 1 } @primes;
sub is_prime {
my ($n) = @_;
if ($n <= 1e6) {
return exists $primes{$n};
}
return Math::Prime::XS::is_prime($n);
}
my $max = 0;
my $max_a = 0;
my $max_b = 0;
for my $a (-1000..1000) {
for my $b (-1000..1000) {
for my $n (0..1e6) {
if (!is_prime($n**2+$a*$n+$b)) {
if ($n - 1 > $max) {
$max = $n - 1;
$max_a = $a;
$max_b = $b;
}
last;
}
}
}
}
print "$max $max_a $max_b ", $max_a * $max_b, "\n";
|