#!/usr/bin/env perl use warnings; use strict; use ntheory; use bigint; my $n=12; my $c=1; my $k=10; my $l=10; my $p=100; my @candidates = (0..$l); my $remove; sieve2(); sub sieve2 { forprimes { $p=$_; foreach my $i (0..$l) { if ( ($n*($k+$i)+$c)%$p==0) { $remove=$i; @candidates = grep {!/$remove/} @candidates; } } } print join("\n",@candidates),"\n"; } sieve2();