primes m...n
public text v1 · immutableuse integer;
# 10^9-10^5 10^5
my $a= 999900000;
my $b=1000000000;
my $n=$b**0.5;
# find primes
my @p; # $p[$k] is 1 for composite
for ($i=2;$i*$i<=$n;$i++) {
if (!$p[$i]) {
for ($j=2;$j<=$n/$i;$j++) {
$p[$i*$j] = 1;
}
}
}
my @s; # $s[$k] is 1 for composite
for ($i=2;$i<=$n;$i++) {
if (!$p[$i]) {
for ($j=$a/$i;$j<=$b/$i;$j++) {
my $k = $j*$i-$a;
$s[$k] = 1 if ($k>=0);
}
}
}
print map { ($_+$a)."\n" } grep { $s[$_]==0 } 0..($b-$a);