my @in = (1, 2, 3, 4, 3, 5, 3); my %find = map { $_ => 1 } (3,4); my @out = grep { !exists $find{$_} } @in; # or: @out = grep !$find{$_}, @in; say for @out;